You are exactly correct. High school teachers aren't much better. Teaching doesn't pay what engineering jobs pay. Only rarely would an engineering graduate teach high school.
On the other hand, students develop interest in STEM fields spontaneously. Those students find their own way, right through college.
Very little of what I learned in the college environment was applicable to my career. I self-taught by reading mountains of technical books. It is certain that such is the norm rather than the exception.
I joined the military out of high school because I DID NOT want to go to college. I remember my high school guidance counselors shock when I told her that I was thinking of joining the military. She said, “Oh no, you don’t want to go in the military, that’s for losers and stupid people. No let’s get your college applications in order.”
Little did she know just how much that affected me and I vowed to (and did) join the military shortly after.
By-and-by, I really liked that lifestyle and reenlisted while also going to college. By the time I retired I had my master’s in computer science.
I then taught Microsoft and Unix certification courses for 20 years at a university. I retired from that and then worked for Microsoft teaching Azure technologies for my last few years.
Many of my students have achieved their goals. None of their career/financial goals came out of for-credit courses as much as getting their certifications did.