The right way to avoid this nightmare future isn't to try to swim upstream, resisting these tools just because they will be (and are) being abused by capitalism. It's to use all of the tools available to us to build the future WE want.
As @alcinnz pointed out, the thing in common between WASM and WebGPU is that they're completely crossplatform. I think they're the future because they make it so we don't need to care what CPU or kernel the host uses. They also provide a more robust isolation model than any "raw" OS does. WASM/GC can even support capability-based security.
Instead of trying to fork or replace the Web, we should evolve it. We should embrace and extend the things capitalism produces that serve our purposes.
Microsoft famously invented "embrace and extend" as a strategy for beating FOSS, but my favorite example comes from Mozilla. While Google was struggling to get anyone to adopt NativeClient and Portable NativeClient, Mozilla made it so Spidermonkey could efficiently execute the code being spit out by an experimental C++ to JS compiler called Emscripten, creating AsmJS (I could be getting the exact history wrong, please feel free to correct me but I don't feel like researching it myself).
The advantage of AsmJS over NaCl and PNaCl is that it was part of the JS engine, so it had exactly the same API people already knew for web development. NaCl, on the other hand, used PPAPI, the same API that Chrome plugins used. That made it a lot harder to adopt in another browser and created a steeper learning curve for anyone who didn't already know how to write plugins (again I might have some details wrong; please feel free to correct me).
Eventually Google dropped NaCl and PNaCl in favor of making V8 able to execute AsmJS efficiently. They even did it without writing any AsmJS-specific code, which is pretty impressive. Eventually AsmJS got its own compact represenation very similar to PNaCl (which was based on LLVM bitcode). That dramatically improved loading times, the biggest disadvantage of AsmJS, which compressed well but still decompressed into very "fluffy" source code that the JS engine had to parse.
3/n