Single purchase licenses are way better but a company with a cloud component can not be sustainable on that model. One option is to provide a way to offload the cloud storage to another company (such as Dropbox syncing).
Depends how much data users use. I have a feeling you could store and transfer a lot of data for a £40 fee.
A couple of alternatives:
1. Decouple the cloud syncing component and sell that as subscription, with a sync-less version for a fee. PWAs mean you don't even need to give up the web platform to do this nowadays.
2. (My personal favourite) is sell a perpetual license but charge for feature upgrades. Retro, I know.
3. Sell a subscription licence which includes a perpetual license for the latest copy of the software. If you stop paying, you stop getting updates. JetBeains works like this with their products.