First, make sure you're using a good version of lame.
Second, --alt-preset standard will create variable bitrate mp3's. This means the bitrate will fluctuate depending on exactly how high bitrate is needed for a little segment of a song to sound "very close to CD quality". This means that A) you will see the bitrate flutter about in XMMS and Winamp, and B) that you will never use a higher bitrate than needed, or not high enough bitrate. It's very neat, but some find it confusing at first.
XMMS and Winamp (and Windows Media Player, and CoolPlayer...and...and...and...) all handle variable bitrate mp3's, so your problem is most likely something else. I still think you're using a bad version of lame. I usually build it from source
Third, in Grip, my encoding options are as follows:
Encoder executable: /usr/local/bin/lame (since I built it myself, otherwise it should be /usr/bin/lame)
Encoder command-line: --alt-preset standard %w %m