The games played thing is a tough one. If there is a hard cut off at a random number of games, say 50 games, and one player has 51 and one has 49, it is really fair that the player with with 49 games gets 0 chance?
How about a sliding (non linear) scale. To explain, if you got 100 points in the voting but only played say 55 games out of 82 you only get 75 points or something. This discounting factor curve could be determined in advance and simply applied. At a point (meaning at some number of games) the voters would simply not vote for the player.
It guess the voters would say that games played was factored in by LeBron being 3rd team instead of 1st team, so maybe this works itself out after all.