All the times I've exchanged money in Mexico (which was minimal since USD are widely accepted - don't know about the Euro, but I've seen Canadian dollars accepted at restaraunts/bars/taxis/stores), it was at the resort's front desk (which I'm assuming our hotel will do, but I've never personally been there, so no gaurantees). They offer the same exchange rate as the bank would - not like if you go into a store or someplace off the street, who may round off to make it easier (for example, if it were 13 pesos to each dollar, they would give you 10 pesos per dollar). Most of the time, this will be a free service. I have been to hotels in other places who charge to do the exchange, and I've been to 1 hotel who only did it for free if you were part of their all inclusive deal.
Either way, I would check the hotel first, then a bank, before going to a currency exchange station (higher fee to do the exchange) or store (may not get the full value and possibly pay a fee).