Locally could be easier to rely on background run of a docker image instead of another console serving the files, just to run and forget, just use it by the dependent project you probably could be working on (Dependent on the static content). I'm agreed on the cloud it's better use the plethora of services available for static content directly like Cloudflare.
I use them too. Sometimes I like to have some repos with the static content, which get deployed by a CD tool to those services. It's common for me when debugging or testing locally in my PC or LAN, to include some docker build for those repos which I don't use at production time, but I used it locally. Maybe is not a big problem at all, but I use it that way, specially when in my projects the CND used is not a free one. Makes sense?
This is exactly the problem we all always have with trying new services and dealing with relatives, friends, coworkers, and new networking pales which is ultimately the daily communication targets.
You need a native program to access the web, so for now, always you'll need at least one native program ;)
Now, seriously, as muzani states indirectly, the preferred way will be divided as long as implies another layer and a difference in available device services. Also, you mentioned a disadvantage of the stores but think about the distribution network in terms of online presence to being noticed. There're plenty of pros and cons in every aspect.
Regarding the update point, like in desktop OS, with Android, you didn't need to wait, just take the APK file and install it. From the perspective of your sentence, it's only a problem (or situation) of the Apple ecosystem, not related to the web/native. They can't control the web but if they could they will. From the perspective of the consumer, some say they are fine with the gatekeeper, adding a layer of security and quality assurance.