I know there are some MoneyCorp cash machines in Heathrow and Gatwick that allow withdrawals in EUR, and that will charge your card in EUR with no fee if you choose the right on-screen options. I believe (but never tried) that they offer USD as well. The reason the machine must offer the choice of charging your card in EUR as opposed to accepting the MoneyCorp exchange rate is because of MasterCard rules requiring ATMs to allow the client to choose between Dynamic Currency Conversion or charging card in the locally withdrawn currency.
You might also check out the Citibank cash machines in the St Paul’s branch (and a couple of other places), which are advertised as offering EUR and USD withdrawals. However, it’s possible that the facility is only for Citicard users. I’ve never tried it.