Wouldn't all these issues be solved by the customer reading a one time key over the phone?
Can someone bookmark this post where I say the first billion dollar external bank fraud success will happen within the next 18 months please.
If a bitcoin exchange can do it, I don't see why a bank couldn't (banking is easier - you can cancel transactions).