Why is wireless power transfer done between two coils at their self-resonant frequency?
at self-resonance there is a very high impedance, so shouldn't the
  coil behave like an open circuit?


For a parallel tuned resonance: -

The current into the inductor at resonance is exactly opposite in sign but equal in magnitude to the current into the capacitor hence those currents add to become perfectly zero in the feed wire to the tuned circuit.

However there is still an excitation voltage attached to the tuned circuit and there is still an inductor attached to that excitation voltage hence there is still inductor and capacitor current.

Probably what confuses you is that how can you make "some" current from "zero" current. Well it doesn't begin that way, when you first apply a resonating sine wave to a parallel tuned circuit you don't instantly get infinite impedance - you have to get energy flowing into the two reactive components and this takes time so what you have is energy taken from the supply.

Once the energy delivered to the reactive components is done, those two perfect components can sit there swishing their voltage and currents back and forth to each other even if the sine wave is removed (just like setting a pendulum in motion by pushing it).

So, a magnetic field is produced by the coil and if this induces eddy currents into a local piece of metal then energy is removed and the sine wave has to restore the energy. If this magnetic field couples energy to another coil then energy is removed and this will be restored by the drving sine wave hence power transfer.