I'd bet that Amazon is paying far less than 2% in card processing fees.
Amazon needs credit cards more than the credit card networks need Amazon.
Also, Amazon transactions are virtually all card not present transactions.
(Unless Amazon pays a higher fee but considers the 5% return to customers as some kind of "increase net spend on Amazon" benefit, but I think that's just Chase trying to kill Discover)
Also as of this year Costco lost me as a client since they dont accept Amex anymore. To me that was enough.
But it's entirely possible that I'm reading the report wrong.