Can you please be more specific on how this service works? I didn't understand you correctly. I might be able to make my answer better if you can give more details.
Why is it "impossible"?
Right.
I don't know why implementing an SPV client is impossible. If that is true, then online wallet is your best choice if you know what you are doing. Else, I suggest you to create a block explorer and allow API requests. Then, you can create a simple app which uses this API. You can do that in four steps:
• Fetch unspent.
• Create raw transaction.
• Sign raw transaction.
• Push signed raw transaction.
Any advice appreciated.
A ledger is important if you are creating an online wallet. You should backup this ledger and all private keys or wallet.dat either twice every 24 hours or when users create x addresses.
I highly recommend you not to keep everything in the hot wallet unless your security is good enough. I would also suggest to enable off-chain transactions but remember, this will make your part more complex.