I believe there are a few reasons "Red" was chosen over "Blue" or "Green" to be the lasting mascot for Gen I. Unfortunately, after long periods of Internet searching, I was not able to find any interviews that officially commented on why "Red" was chosen to be the lasting name over the other two, so this is just informed speculation.
I think one reason had to do with Red being the only protagonist that bridged the international gap of original game releases.
If they had chosen Green as the iconic Gen I protagonist going forward, Western fans would have been like "huh, who?". If they had chosen Blue, they may have risked confusing the Japanese fans who had not bought mail-order-only Blue re-make in Japan.
I think that another reason Red was used as the Gen I protagonist going forward was that in every piece of promotional material for the original games, the main character is wearing the color red. Regardless of if the game being referenced was Pokémon Blue or Pokémon Green, the protagonist was always shown wearing a red outfit in the artwork for magazines, guides, and promotions (no artwork exists showing the trainer wearing a green or blue outfit).
There may have been three trainers
Some people have speculated, based on the cover of the Gen I Japanese guidebook, that there may have originally been plans to have three trainers in the original game, one being Red (the playable character), the other being Blue (the rival) and the third being a female "Green" character.
Based on all of these circumstances, Red seems like the easiest choice for who should be recognized as the "classic" Gen I trainer going forward. Red was already associated as the protagonist of the games in the most artwork and in the most regions of the world. I probably would have made the same decision to keep him as the face of Gen I Pokémon had I been on the Game Freak team.
But again, this is all speculation :)