Kartenzahlungs-Gebühren sind in der ganzen EU verboten. Das scheint Länder wie Belgien oder die Niederlande nicht vom Runden bei Barzahlung abhalten zu können.
Ansonsten ließe sich das "Problem" (sofern es in Deutschland tatsächlich wie von dir behauptet bestehen sollte) ja auch lösen, indem bei Barzahlung immer abgerundet würde (4,99 € --> 4,95 €, ergo keine "Gebühr", sondern "Barzahler-Rabatt"), während es bei Kartenzahlung einfach bei 4,99 € bleiben könnte.
Für die Quelle zum angeblichen Verbot unterschiedlicher Preise für Bar- und Kartenzahlung wäre ich immer noch dankbar.