Consider that idealistic politicians are also capable of more damage than corrupt self-interested ones.
The solution is not to seek for selfless idealists (who may be dangerous), but to remove power from politicians (to the extent possible) or at least to move decision making as close/locally as possible to the areas affected.
In a way, those interested in politics to make money would be less interested in it for the pure sake of having (then preserving) political power.
Here's one way to start: remove direct elections of senators. It makes lobbyists having to deal with 50 separate state legislatures rather than 100 individuals.