All MIDI controllers suffer from this limitation - at least every one I've ever laid hands upon. My primary controller has the opposite problem as yours: it's too easy to hit 127 while playing (I'm heavy-handed). But I have another keyboard that you have to hit with a hammer to get full velocity. I stopped fretting over it long ago.
I don't worry about it because it's ultimately a non-issue, especially for virtual pianos. This is because the ideal velocity range for each sampled piano is going to be different anyway.
If, for example, you record a MIDI track and route it to Piano1.nki and then decide it's too mellow/harsh/roomy/whatever and pull up Piano2.nki to try in its place, chances are the velocities won't be right for the alternate instrument. Sometimes quiet notes disappear, sometimes big hits sound like thumbtacks in your ears. You'll often end up editing some notes or shifting the entire track up or down in velocity using the Velocity slider in the track header (nice, because it's non-destructive).
More likely, you're going to need to reduce the dynamic range: make the quiet notes less quiet and the loud notes less loud. For that, you'll want a virtual instrument that allows you to define a custom velocity curve. Chances are you'll only need to set it up once to suit your controller and playing style, and won't need to fiddle with it again. If your virtual piano lacks that feature, try the velocity-scaling feature as suggested by aslow3. My own experience with it has been less than satisfactory, but it's worth a shot.
My advice: keep your controller if you're comfortable with it. If you do upgrade, get something that has a nicer action, more ergonomic controls, or that feels more like a real piano. Or
less like a piano, if you do a lot of non-piano instruments. As long as you feel comfortable with the controller and can play fluidly on it, let software take care of the rest.