What about having a vote budget? For example:
say you have a collection of votes, each of which is
one of -2, -1, 0, +1, or +2. Spending a vote uses it up,
so when you've run out of (say) +2 votes you can't use any more
of them until you get some more. Every time you vote,
you gain back vote fragments in the following proportion:
1/9 of a -2 vote;
2/9 of a -1 vote;
3/9 of a 0 vote;
2/9 of a +1 vote; and
1/9 of a +2 vote.
This way, your total number of votes never changes, but
over the long term you'll find yourself constrained to follow
the curve. (The curve doesn't need to be bell shaped
or even symmetrical, but this was just an example.)
The power of individual voters can be adjusted by doling out
additional vote fragments to people according to some
policy (much as I gather it works now).