This is a great argument for forcing network interop. Akin to net neutrality, allow card companies to transit over the network for reasonable rates. This removes any networks ability to squeeze things like this
It depends where the division is, I guess. It always feels a bit heavy-handed to force private companies to interoperate within their infrastructure. That being said, I don't really know a better way to do it.
Having terminals be more universal would be good, but good luck replacing old ones and convincing entrenched market participants to offer them..
The newer generation of products like BNPL are even worse; they often contractually prevent merchants from charging a surcharge commensurate with the cost of accepting that payment method.