Damn... I wrote a reply to this yesterday but lost the text thanks to a small accident... Here goes again.
gl_gamma and gl_contrast doesn't work for you? Try changing the vid_hwgammacontrl variable to whatever of 1 or 0 it isn't currently set to, and then see if it works. I use gl_gamma 0.6 and gl_contrast 1.6 and that does most definitely not look washed out. However I guess the values you need may differ depending on graphics card, drivers, yer monitor etc.
The r_wateralpha issue... Yes. It's just the way it is. Nothing you can do in joequake that will improve the situation (I think... I've heard of some engines that automatically fill in the missing map parts underneath the surface but I don't think Joequake does this).
Good news though, there are two other ways around this. First one is a do-it-yourself solution. You need two programs, vis and bspinfo, from Bengt Jardrup's homepage (
http://user.tninet.se/~xir870k/). Then you can process all maps that haven't been processed already. Takes anywhere between a couple of seconds to many many hours for each map. If you need further instructions, just ask.
Second solution... TeamSDA (
http://speeddemosarchive.com/quake/ have already gone through the painful task of revising all maps we have in the archive. If you find that you play a lot of the same maps as we do, you can download a 200 MB file with all maps we use, water vised and done. The file is here:
http://speeddemosarchive.com/quake/maps/watervisedmaps.dz. You'll also need dzip to extract the file,
http://speeddemosarchive.com/dzip/
Long post! Now you see why I was upset when I lost it yesterday