The British Airways and Hyatt Visa cards from Chase don't have foreign exchange fees. I don't know how their currency rates compare to others that charge fees. I also believe Schwab High Yield Checking has a no-fee debit card.
I just got back from Paris and Rome and used my British Airways card whenever I could. I went through a lot of euros for airport taxis/shuttles, small cafes, and metro passes.