Maybe the root problems are HTML and its browsers. Or more exactly: the fact HTML is about documents. Everything done to make apps from it are hacks.
What would be really needed is an open application format standard and a protocol to share it and maybe interact with it. And open source clients able to run those applications.