This is America. If you want to haggle, take your grandma to a garage sale. In the land of the free, we pay the sticker price (+ tax). So if you pay upfront a hotel's published rate and the taxes, you have paid. Refuse to pay anything else. How?
1) Refuse to pay
When you check in, if the hotel front desk clerk refuses to give you your key without paying an additional rate for the night (aka a "resort fee") refuse to pay. If the clerk is confused, ask for a manager. Tell the manager you already paid the published rate for the room and all necessary taxes. Most managers like to keep customers happy so some nice managers might waive the additional room rate / resort fee.
2) Dispute the charge with your credit card company
If you cannot get your room key without paying an additional rate / fee, just hand over your credit card. After your second room rate / resort fee has posted to your account, call your credit card company and dispute the fee. Your credit card company might ask for documentation. One example would be to send them the hotel's own website advertising free wireless internet. Then show them your bill when they charged you for internet in the name of a resort fee.
3) Sue in small claims court
If you didn't pay by credit card, you can always sue in your local small claims court. This might seem daunting but small claims court is set up to be extremely easy so that anyone screwed over can bring a claim. You do not need a lawyer in small claims court. If you booked the hotel online sitting in your home, you have jurisdiction in your local small claims court. Go there, ask for some help from the staff in the small claims court office and you can file a suit for your additional room rate / resort fee back. You will likely have to pay a fee which varies in small claims courts across the country but usually ranges from $10 to $40. You can get this fee back with your additional resort fee / additional hotel rate (just ask the court staff to help). Again, no lawyer needed. The hotel will most likely just mail you a check and you will never see small claims court. The big hotel companies are not going to waste their $500 an hour attorneys fighting your $100 (+ court fees) claim.
NOTE: Nothing above is intended to be legal advice. If you want legal advice, talk to a lawyer. If you want hotel advice, reread this page. If you want a gordita supreme, go to Taco Bell.