I agree, although arguably the MP3 "core format" has had a number of extensions around so many things that ultimately became de facto standards (vendor extensions if you will). I remember how you could not have precise seeking or current time display with VBR, which now seems to be now largely a solved problem.
> There are certainly nonstandard metadata hacks for MP3 to retrofit gapless support
One of these is LAME adding gapless stuff at least as far back as 2003, so yes it's a workaround to a format limitation, but it's quite an old one, and fairly stable and known well enough that it's been a while since encoders default to encode with gapless metadata.
There's an interesting historical explanation here:
https://sourceforge.net/p/lame/bugs/453/#1bd2
I do agree though that the easy path out of it is to just stop using MP3, for this reason and a zillion others ;)
More modern formats solved this issue by precisely defining the start/end points so decoding can produce an output with precisely the same alignment and number of samples as the input.
There are certainly nonstandard metadata hacks for MP3 to retrofit gapless support into it, but the core format cannot do it.