The lottery system won't fix the problem... the Penguins walked into Sidney Crosby after drafting in the top 5 for three consecutive years (including 2nd and 1st), then drafted 2nd the very next year.
I like the rule that you can't draft first in back-to-back years, or maybe even for 2 years after drafting first. Or even apply that rule to the top two or three picks (and yes, I know that would have cost the Sabres Eichel, but it also would have prevented the tank). Not only does that help prevent tanking, but it also doesn't reward teams for drafting a bust. I think the rule has to be combined with a lottery in some way to totally prevent tanking, though.