Make peace with this fact: you can most definitely build businesses and add value to any organization. But you won't be able to optimize Twitch's video codec or any other very low level, uber-specific, high impact code. Business need both types in this world. No shame in that, but don't lie to yourself into thinking that you can do _both_ with no CS degree. You can't.
Nonsense. You can absolutely teach yourself to optimize low-level code if that's what you want to do. The amazing thing about today's world is that all of the incredible resources available for learning just about anything in science and engineering to anyone who has the time to consume them. And you can work on open source projects to build your native skills. The difficult part for you will be obtaining an intervie…
To some extent open-source has removed the cost for reinventing libraries, reverse engineering and there is little need to study specific elements in a subject to solve such a problem when you can grab lib_whatever or a free compiler for a language.
You are right that in interviews at famous companies (FAANG, asset management companies, aerospace / embedded systems companies) being self-taught here isn't enough. Instead, they require specific certifications and they look for the graduate with a strong engineering degree rather than someone who is self-taught.*
Right now in 2019, I would do both.
*Having a serious open-source project or significant contributions is actually a huge advantage over recent graduates.