I've remarked that Carter Vaughn isn't the perfect ally. He means well, and deserves credit for that. At the same time, it's important to acknowledge that it was problematic of him to automatically assume that Shane's figure skater friend was "probably gay" just because the guy was a figure skater. He has some stereotypes he needs to unlearn.
That said,
He called gay athletes brave, where his teammates could hear him, and he showed up to cheer for an athlete he believed was gay as a gesture of solidarity. That's way more than any of the other straight guys in the show were willing to do. That automatically makes him a better ally than Marleau or Pike or any of the other straight dudes who said nothing and did nothing to uplift queer people.
Not one single other straight character in the show made a point of verbally expressing support for queer athletes in front of his teammates/friends.
We can "headcanon" other characters as queer allies, but Carter Vaughn is the only canon queer ally.
Book!Hayden was quick to reassure Shane that he was cool with Shane being gay after Shane came out, but he had nothing to say on the subject before Shane came out. Maybe he never threw around the word "cocksucker" in the locker room the way J.J. did, but he never told J.J. to stop either.
The support Carter Vaughn offered may have been imperfect, but at least it actually was support, and not silence.
.
I just feel like it's sometimes a little too easy for people in fandom to project perfect allyship onto characters who haven't actually done any allyship at all, while simultaneously over-scrutinizing characters who make a real effort to be allies, just because they didn't do it perfectly.
It's a little too easy to pick apart characters like Carter Vaughn for not going about support in the right way, and then turn around and assume that characters like Marleau would do better in the same situation, when it's just as likely they'd do worse, or they'd do nothing.




















