You can't weed them all out. So, what's the solution? Use a statistical algorithm? Maybe, they can have a statistical algorithm to make sure all the best players get in. Then they can have a ballot where the writers can vote for the borderline guys that don't get in statistically.
Rank voting might yield better results too. Make the writers rank every eligible player and then add up the ranks. Any writer that is not disqualifying Bonds will probably give him a really high rank and he might end up doing better than Ortiz. If any writers think that is too much work, they don't have to vote.