It's one thing to protect a guy like your cousin in the situation you describe. It's another to protect the guy who is deserving of termination, and I think a lot of the animosity towards civil service employee unions stems from stuff like that.
That's America. It's like Freedom of Speech, sometimes you have to accept something someone says that you don't agree with. And, as Doc said, not all Unions are the same. So your point merely agrees with his.
In your case, I don't see where it was the Unions at fault, but the legal system that allowed them such freedoms. The failure of the legal system to be able to moderate lawyers and technical legal minutia is what has allowed this country to become so absurdly litigious and cowardly. We cannot fathom offending anyone for fear of a lawyer and court saying they have to pay them money. So, if these dirty cops (and I have never, ever heard of a "dirty firefighter", btw) deserve justice, then make a law that punishes them. But, no, that wouldn't do for attorneys and the corrupt legal system would it? There's no money in punishing the guilty...