People just need to stop being wusses. The only people that don't want to participate in premades are the ones that either do not want a challenge (aka people that only like to win) or people that only want challenges up to a certain amount (aka "Oh my team sucks, that's why we lost. I totally admit the other team is good, but we would have done a lot better if my teammates were good. It is just too frustrating that I seem to never be on a good team. It's my team, I am the only good one! I can't carry the team!").
The simple solution is to show skill levels. Each person's name is colored relevant to you. So if a person, compared to you based on some equations, is much better, they will appear deep red. If the person is much worse, bright blue. Midway, orange. Also hovering over a person can show immediate relevant stats such as overall ranking, overall ranking as selected demigod, win ratio and number of games played.
Ideally, an equation for this would take into account win ratio, total games played, and overall ranking.
Basically the idea is - people don't leave because they are playing premades. That is just the excuse. They leave because they don't like to lose. If people were color coded relative to your own calculated "skill level" then they could choose to leave based on the fact they just entered a game where the enemy team is all dark red and their teammates are all bright blue, where as they would be inclined to stay if their teammates are dark red and maybe the enemy team is all just orange (regardless of the fact it is or is not a premade team).
To further, custom games could then be sorted by overall skill level of the game.