Your critical flaw is that you are interpreting "qualifications" too narrowly. You clearly see yourself as more qualified than your current manager, because you have similar past checkered work history, but she doesn't have a college degree and you do, and she doesn't behave the way you think a professional person does. But each company decides what "qualified" means; good Lord, if I'd worked in an environment where swearing was frowned on, I'd have been fucked. Technical skills and college degrees and the like are awesome for getting that first job. But every job you get after that -- particularly when you want to make the jump into management -- depends on your non-technical "soft" skills -- like how to make money for your company*, how to manage people (both up and down), how to communicate effectively, how to navigate difficult situations, etc.
It seems like your company likes what it sees from your current manager so far. So what you need to do is stop focusing on what she doesn't have compared to you and start focusing on what she has that you don't -- what do the people who get promoted do, how do they act, that the people who don't get promoted don't? Because those are the "qualifications" that your company clearly values, and that you are going to need to develop or improve on if you want to become one of those fast-risers.
You also need to cut the negative characterizations of building relationships as brown-nosing and sucking up to get ahead. Sure, sometimes that's it. But mostly managers want to promote people who make their lives easier. And who makes their lives easier? The people who take the time and effort to do the work in the way the manager likes it to be done, vs. the way the employee thinks it should be done. The people who speak their language and who don't need to ask a zillion follow-up questions on trivialities (or, if the manager is a micromanager, who know to ask about every little thing because that reassures the manager that you're on it). The people who provide the right information, on time, every time. The people who go the extra mile, who take responsibility for their area and make sure things are always on track and managed efficiently, so that that's a whole area the manager doesn't even have to think about. That's not "office politics" and brown-nosing -- that's basic common sense and psychology.
Finally, slow your roll. You've been there 6 months, and you're clearly frustrated about being subordinate to someone who has been there for literally 6 times as long as you. It takes time to adjust to a new working environment and new expectations and new communication styles and work preferences and all that. And it takes time for your manager, and the management above her, to judge your own capabilities. Even if you do compare yourself to your manager, if she's a new manager as you suggest, and she was there 2.5 years before you, then that sounds like she was there at least 2 years before she got her first promotion, right? So how about instead of treating her as your inferior, try to treat her as a potential ally -- watch what she does and figure out how she likes things done; look/listen for the things that she does that seem to make her boss happy and the things that don't; talk with her about your career goals and ask what you need to improve to work your way up -- heck, ask her what she did that impressed the bosses to promote her for that job.
You are a smart guy, you can do this. You just need to broaden your perspective of what makes a good employee and a good manager, and then put the ego aside and try to develop whatever additional skills you need to be noticed within your current company's culture.
*Note that that "sales" background that you so clearly see as beneath you is in fact something that most companies value extremely highly, because that's what brings the money in the door. Again, this is a critical shift of focus you need to make.