Could you possibly make a version that shows a button "click here when you have sent payment", that will close the window and put the order through regardless of payment? I know this is not ideal but it would be no harder to check if the payment has been made than it would for say a bank transfer payment.
It makes sense to separate verification from the ordering process. The payment extension will only need to generate and display a new address for every order, which can be done in PHP. The extension can generate public keys using a deterministic wallet algorithm. The corresponding private keys can be generated locally on operator's computer. This scheme does not need a hot wallet or a third-party service.
In all honesty I would personally still check each payment had been made manually anyway, so for me this solution would be fine. I can understand how others may want the whole process to be automatic though, especially for digital goods.