You need to address the source of the smells first. I'd suggest that if you have water in the bilges to add some Cascade dishwashing crystals ... go for a run to "swish" it around and then vacuum the bilges out with a shop vac. I'd also suggest doing the same to your shower sumps. (Discard the vacuum water legally if it has any oil in it!!)
Then hang Bounce fabric softner sheets around the cabin in inconspicuous places. Adds a nice fresh smell.
If you're in an area with high humidity like I am (SC) you might also try using a dehumidifier. I purchased my dehumidifier from Sears and added an overboard condensate drain. Keeps away all "musky" smells! The unit that I have has an electronic control panel that allows you to select humidity levels as well as run full time, 3 hrs on and 3 hrs off or 6 hrs on and 6 hrs off. Once the unit reaches the selected humidity level it will shut off. The heat it generates is an added plus in the winter and the AC takes care of it in the summer. And since using AC extracts water from the air, it will run less in the summer unless the hunmidity is really high.
Just my two cents worth.