That 2% cashback you get for using your Amex isn’t due to Amex generosity. That’s literally what retailers pay.
Right now I will absolutely use my cc for anything I can. It’s literally cheaper than cash and users of cash subsidise all my purchases. The only way to fix this is to force the surcharges on the cc users so cash users aren’t subsidising the price. But good luck getting that passed as law. Everyone either doesn’t care or thinks they are getting an amazing deal from the 2% back. It’s got to the point where stores that add a cc surcharge will be called out on social media when all they are doing is preventing cash from subsidising credit cards.