You seem to fail to understand that every country has a different regulation.
First of all, in a lot of countries it is mandatory to have traced payments, so no cash can be involved.
Then, every country has different taxation.
A lot of EU countries tax you just because you have a foreign bank account.
Also, theory and practice are very different.
While I agree you can fight back for your rights, I remember having contacted different kind authorities for 7 months because a company was rejecting my SEPA IBAN.
Unfortunately, that was the only company I could use for that mandatory service, and after they got fined, they happily continued accepting only national IBANs.
The result has been months of frustration, endless calls/appointments with authorities to gain nothing.
If I could go back, I would give them a different IBAN, even if on a theory level they were wrong.