McCree is meant to be a counter to assassin/duelist characters (Tracer/Genji/Reaper) because his flash bang can deal with their high mobility and/or prevent their burst, he absolutely needs to keep that identity.
The issue is his limits far exceed that design with oversight in his kit, he destroys squishies and in a lot of scenarios he can get away with destroying tanks too. He has no hard counter, only minor counters, Bastion, Widow, Hanso, and Zarya. Which are not always worth picking on many maps and game types. He doesn't make up for it with a weak ult either. Quick nerfs are easy to write up for him...
Flashbang range has a huge hit-box radius and can be abused on ceilings/walls to stun Reinhardt, taking his shield down, or net a free kill on a corner almost every time.
His roll reloads his clip, allowing for a lazy fast burst combo, right-click, roll, right-click, melting through squishies and tanks alike.
Headshots with LMB can extend past winning mid-range fights.
I've been waiting for his design to come up in a conversation, too efficient to play, dreadful to play against.