Maybe they shouldn't advertise 125 mb/s if they can only deliver 90% of that in the best case.
They aren’t delivering 90% to you, they’re delivering 100%. You are getting all 125MB/s, the full amount they advertised to you. The fact that you’re confused here is exactly why they do not advertise bandwidth this way.
Routers, network cards, and Ethernet cables being "gigabit" or similar is also confusing,
No, it’s not confusing. Those devices pass bits between each other. It would be confusing if you measured the bits they’re passing in Bytes for some reason.
1000Mbit/s down, which translates to a real world speed of 110-112 mb/s
The real world speed is 1000Mb/s down.