You're overanalyzing this.
I'm serious, and I have a right to tell you because:
A) My brain works the same way and at first, I also overanalyzed it.
B) I currently have a job where I'm doing research AND programming, including a lot of SQL and C (all "back-end" stuff). I do not have a CS degree.
C) Nearly ALL of my friends who are programmers don't have CS degrees.
D) I know a guy who became a senior developer at age 20 as a back-end engineer for a medium-sized company because he knew SQL well. Never stepped foot in a college. Casey Muratori created a tool used to make over 3,000 best selling video games, never stepped foot in a college, Anders Hejlsberg led the team to develop C#, doesn't have a degree, Uncle Bob Martin doesn't have a degree, pretty sure Kate Gregory (C++ teacher, MVP, consultant) doesn't have a degree... Edward Snowden doesn't have a degree and I think he even may not have graduated high school. The point being, it's not a requirement.
Listen, if you make excuses for yourself that you not having a degree will hold you back, then it will. If you poison your subconscious into that train of thought, it will reflect in your applications and interviews and you will be unsure of yourself. It will also turn into insecurities in the workplace around others who do have degrees and PhDs and all.
My advice is this: Software engineering is HUGE now and there are tons of jobs to fill. If you know that you can learn this stuff without a degree and have skills, then apply NOW and don't have one single second thought about it.
However, if you don't feel comfortable, you have the resources (time and money) to spend on a degree, and you feel that you would learn more and/or contribute to the field more with a degree, then go get one.
This goes both ways because if you choose option 2, don't come out of college entitled just because you have a degree. I've seen those guys/gals get passed up on jobs before and the reason why is because the other guys/gals "get shit done" while those guys/gals come out feeling entitled. Also, you gotta realize, it may sound cool for a company to say they have CS PhDs, but the reality is, nobody really looks that up before they purchase/use software. If it works well, is maintainable, and sells, it's good from their perspective.
Education and training are a very important part of the picture, but they also are not everything. If you have a good attitude, the desire to learn, good work ethic, and people like you, you'll be surprised at who will hire you, with or without a degree.
This is not a post against degrees, but rather one explaining that it is an optional choice to get one. It is a wise choice (depending on the school), but it is optional. If you do go the degree route, I urge you to pick a great program. Why use 4 years on a subpar or just a standard one? I've heard great things about MIT or Carnegie Mellon for example and I would aim for something of that nature if you decide to go.