If he wants to give games away for free, he should do something like:
1. Take the names of everyone who donated to Patreon last month, only the people who's pledges went through, and who are still pledged the new month.
2. Take each contribution amount, subtract $1, divide by 10 and round up (so that 0~9 is 1, 10~19 is 2, 20~29 is 3).
3. Put those names into a list n times where n is the number above.
4. Run a random number generator twice and pull from those name.
5. Hand out the codes over the Patreon private message system and talk about it on stream.
This makes more sense because as far as Phil is concerned, an individual viewer donating $1 over Patreon is worth more to him than an individual viewer on a stream. There is zero reason to use the stream to hand out codes because this doesn't really reward fans. One-time stream viewers might get it, trolls might get it, etc.
His response to this upset is actually the best part because I see what he's trying to do. He's saying that the trolls are just soooo into him and his stream they'll sit there and snipe them, and he encourages people to be as studious as that. What he doesn't realize is that the trolls outnumber real fans and the trolls are going to be more dedicated to taking the code because they want to hurt Phil's fanbase. The actual DSP fan is probably running the stream in the background 75% of the time, while the Troll is actively trying to sabotage the event. It's unrealistic to expect real fans to be able to beat that.
So this is probably the best thing I've seen Phil blunder through in a while. He's genuinely clueless.