A further reply, beyond my simplistic defense of my use of the term "good manager":
It sounds like your "naive and idealistic" manager overlaps with my "good manager".
I will argue that a manager's principle responsibility is actually to be a maintainer of relationships. Her responsibility is to maintain her relationship with each of her direct reports first and foremost, next to help them maintain their relationships with each other, and finally to help them maintain relationships with the other employees/teams in the company as necessary.
Managers do have some logistical tasks they have to take care of, but mostly they "manage" humans, and that is fundamentally about keeping the relationships healthy and functional.
It sounds from your description like you've never had a good manager, and I'm sorry for that. The good ones definitely are idealistic, but they're not naive.
They are, as I mentioned earlier, in much shorter supply than good programmers. I've worked with far more decent programmers than I have decent managers (though since teams have N programmers to 1 manager on average, that may just be sampling bias).
I should also note that when I'm having trouble with a coworker, my default is a one-on-one attempt to resolve the issue(s) directly. If that fails (or in the rare case where I think it's a bad plan), I don't go _complain_ to my manager as such - I ask for their help in mediating conflict and negotiations. Because a good one focuses on relationship maintenance, they're often better at handling those situations than I am, and at helping the different members of the conflict understand each other and resolve their disagreements amicably.
Again - good ones are rare. I'm sorry you haven't gotten to experience one, from the sound of it.