I understand people get pissed when their favorite characters get killed quickly, especially if those characters are supposed to be hard to kill, but remember that everyone is supposed to have a weakness. McCree is just really good at destroying big targets with lots of HP, where the people who play those characters like to feel invincible. I really think that's where a lot of butt-hurt is coming from.
Nah, I get that. The thing is, there's characters that do specialize in that area already--Reaper being the main example. He's not an upfront fighter, meant to get behind people and chunk them from a surprise attack. The shotgun bullet spread especially rips through characters like Winston who are so big and absorb all the damage. McCree excels in all matchups, particularly against the other attackers in his class where I'd say he creams them all. he's the go-to guy for anti-tracer/genji backline harassing shit, but he will also melt a reaper, shoot a pharah out of the sky, etc. When he is doing this and is also just lobbing flashes over Reinhardt's shield and singlehandedly killing him, he's doing too much.
I'm nearing level 50 and have been at the point lately where double McCree games are pretty common, and I just look at the character list and feel pretty lost which never happens otherwise. When a Widow is giving me issues, I go Winston or Tracer and pester them. When a turret is holding the team down, time for Junkrat or Pharah. But when you have to push a payload and can't really go down alternate routes because of a roaming Cree, I no longer know what to do aside from play my own McCree and try to flashbang them first.
It's very necessary someone like him exists to keep Tracer/Genji stuff in check, though. So his kit needs to still abide by that.