There's a Reddit thread called "Its nearly impossible to solo carry your team to victory, but very possible to solo throw your team into a loss," and I think that's the main cause of Overwatch toxicity.
In CSGO, people will scream and yell at a guy for messing up, but they'll still try to win because a 4v5 or whatever is still manageable. In Overwatch, just a single player not pulling his weight creates such a hopeless situation that everyone tilts. Similarly, a thrower in CSGO is much, much more limited in impact than in Overwatch, so people don't do it as much.
God, this. I'd say at least 50% of the games lost in Overwatch are because someone refuses to switch to a more productive hero. If you have five angry teammates yelling at someone who just won't switch, it won't be long until they start turning on each other.
Blizzard is basically putting people in frustrating situations without any real solutions. Of course the community is shitty and toxic.