I think this is one of the biggest issues here, that the EU is actually forbidding to charge credit card users the transaction fee. On the contrary, it should make it mandatory that card users have to pay the transaction fees themselves. This would automatically force card providers to reduce their fees, because nobody wants to use cards with high fees. It would also get rid of nonsensical cash-back systems.
The EU also regulated the fee to be very low, something like 0.1% of the transaction value, comparable to the implicit costs of handling cash. If it was America–style 5% then it would be a problem, but at 0.1% it's not.