1. It's 10% about what you do. And 90% about how you present it. Presentation includes getting people to people know your value, your impact to the business, and most importantly, talking yourself up, and talking yourself up to the right people :). The higher you go, the more important this is. Which goes to point 2:
2. The higher you go, the more it is about who you know, and how well you know them. Who's ear have you got? How influential are they, and who are they influencing? What do people think of you?
3. Then it's your teammates, and your peers. You want to get promoted, but what do they think? Are they going to support you? The company thinks of this too.
You mentioned people who have caused delays, being considered for promotion instead of yourself. How well do they hit the above 3 points?
The higher you go, the more that it becomes a people job instead of a technical job. One thing to ask yourself as well is, do you want to go up? Or do you want to stay technical? If you want to go up, better get in the game!
It's normal to get frustrated on the journey up the ladder. As others have mentioned, the hours are only the entry price, there's many other factors at play here. Btw, as you'll know when you become a manager, his job is to make sure you deliver - and you have, for one year already, 70 hours a week. His job is not to get you what you want, his job is to make sure you work (and the harder that he can make you work, the better). Personally I don't agree with this approach, and it's not one I use, but then again, I've personally had many managers like this.
Ultimately, you will be promoted. I'm sure of it. You're already talking to the right people (this audience :)). It'll just take time. How much time, depends on how well you master factors 1-3 above.