This absolutely makes top lane a pain. So many ranged champs are going top lane and abusing klepto, its sickening.
Easy way to implement it: Make Klepto use up two stacks if used with a ranged attack.
As a result, you can buff it in a different way to make it better for melee characters. GP wont be affected by these changes, I believe his Q counts as melee, and is the only Klepto user that doesnt annoy the hell out of you. Ezreal might need a buff after this but thats about it, he would even be healthier with these changes.