The best way to address the noise floor issue is to minimize it up front by running levels high enough that you're approaching, but not hitting, 0 DBFS (i.e. good levels = lower noise floor). Are you recording particularly quiet sources that make it difficult to achieve good levels? Maybe you need a preamp?
As for noise reduction, some WAV editors support capturing a noise profile and then removing the noise profile from other sections of the recording. Not sure if this will work for you, if your app even has the feature, or if you have a portion of audio that is only noise. I'm not familiar with any free noise reduction plugins, as I've never really had a need for them.
MIQ responded to my search for a good, free parametric EQ here:
http://taperssection.com/index.php/topic,92354.msg1429578.html#msg1429578I'm guessing your app already performs normalization and you don't need a plugin for it. You may want to determine whether your app performs peak normalization or RMS normalization (or gives you an option of selecting which you want to use). You probably want to use peak normalization, as it finds the highest actual peak, determines the difference between the highest actual peak and your desired peak, and then raises the level of the entire WAV by the same amount. RMS normalization, on the other hand, sort of acts like compression, which you probably don't want to use. And yes, I would apply peak normalization at the end of the processing chain, just before sample rate conversion and dither / noise shaping.