Also, you'll be amazed at the things credit card companies will do to keep you as a cardholder. If all else fails, tell them you have a better offer elsewhere and threaten to leave. If you have had the card for a long time, you don't necessarily want to cancel, as you want to keep the age of the account. But just because the account is open doesn't mean you have to use it. Remember, credit card companies make money off the interest you pay on balances you carry; so simply don't carry a balance if they don't give you what you want!
Another way to reduce fees is to use credit cards with no annual feels (unless you have damaged credit, you should have no problem being approved). Many people fear no annual fee cards because they think you get what you paid for in terms of service. Not true. Many of the big banks offer no annual fee cards, such as Citi, Chase, and American Express. Why pay for "peace of mind" if you can get it for free from the same companies?
Here is a great list of no annual fee cards:
Credit Cards with No Annual Fees