You're right that some stations charge more for credit card use, but the honest truth is credit cards actually make it a little cheaper for them. There's been studies done on this. The reason is back in the all-cash days, there's a lot that goes with dealing with currency. It doesn't show up all in neat numbers on computer like credit cards do for merchants. Instead business would need to count dollars and coins, deal with more runs to the bank, and then have someone do the accounting for the cash. All of these things take time and that's time they have to pay an employee, and that would be more than 2% of the budget. Yes it does hurt a lot of smaller transactions but it does simplify accounting and studies have shown it's pretty much an even trade. Gas stations shouldn't penalize us, the consumers, for these payment methods.
What you are describing is commonly called "overhead" - which every business has, otherwise they wouldn't be in business. What I was getting at is that in these times of high gasoline prices, of course hell will freeze over before that happens, banks/credit card companies should be prohibited from collecting fees from gas station oprators who submit credit card charges.