It's all working now! I decided to go for the second method, making a class that inherits from SuperTextMesh and overriding the PlaySound function. So yeah, I had to make it virtual in the original code, plus I modified the STMSoundClipData, STMAudioClipData and STMAutoClipData to add the string attributes I needed. Figuring out the editor changes was a bit confusing at first but other than that it wasn't too hard.
Hope it's not too much trouble, making PlaySound virtual for the next update like you mentioned. Thank you so much for your help!