In principal this is correct. But there are exceptions and limitations!
If you purchase a SIM card in an EU-country, fees should be equal where in the EU you use it, independent from the providers 'home' country. But there are several exceptions and a 'fair use policy' to prevent EU citizens to permanently use cheaper tariffs from other countries.
But providers are forced to inform you upfront if they will charge you more then standard fee after crossing a border.
Yes, this also includes prepaid SIM cards, but there are some additional restrictions:
Providers are allowed to force customers to use a certain part of their purchased balance/included volume in the country the SIM card was bought (i.e. the provider operates in). Only then alle roaming within EU will be free of extra charge.
This should prevent users from buying cheaper prepaid offers in neighbouring countries to solely use them in another country. But can also be a problem if you want to buy a single data SIM-card for a trip throughout Europe.
The precise amount of data available for free roaming within the EU is calculated by a quite complex formula. But the operator should clearly inform you about the actual data allowance. If you use more data while roaming than the data allowance foresees, you may have to pay an extra charge.
In any case you should note that allowed data volume for free roaming within EU is always only a part of the purchased volume.
Additionally this could be restricted to 90 days of us within a year (and 30 consecutive days).
The regulations don't apply to networks on ships an planes, as those networks often use satellite lines to be able to offer the service. So prices for those networks are not regulated and can be quite expensive in some cases.