An additional option building on option 5:
Ship the Blockstack mobile app with a built-in web browser such as SFSafariViewController. Web-based Blockstack apps would be loaded in the built-in browser. Since the Blockstack mobile app is in the foreground when Blockstack Apps are used, we could guarantee that the Blockstack API is always running and available for it.
Native apps would still be able to use Blockstack for authentication and (probably, as @ryan said in 5...we need to investigate more) have access to the storage API for a short period of time after the Blockstack mobile app moves to the background, but it wouldn't be guaranteed.
Offline storage strategy
Mobile devices are frequently offline: NYC subway, London tube, elevators, airplanes, etc. It would be great if Blockstack storage could work offline as well. If we can solve the offline problem, this would go part of the way towards solving the challenge in option 5 & 6 where the Blockstack API that is only periodically available when the operating system puts it to sleep after a period of time in the background.