I don't know your situation well, but the way you talk sounds like I used to. I spent too much of my career criticizing the people around me. Long story short, you get zero points for making other people look bad. It doesn't benefit your career, it doesn't make you feel good.
If there is an opportunity for your co-worker to be more effective, that's a great thing. You get to be the one to show him how. Just don't forget to do so with humility, because maybe there's a very good reason for doing it the way he does now. And if he's not interested in your advice, try not to take it personally.
It may be that you really are surrounded by idiots. Your co-workers are stupid, management is incompetent, they'd all be better off if they just listened to you, whatever. In this (unlikely) worst case, negativity still gets you nowhere. Acknowledge to yourself that you aren't satisfied with the situation, start looking for another job, and continue to show up every day doing your best and helping those around you. I've watched others take this approach and they're doing a lot better in their careers than I am, and they seem happier.