Can't beat fresh air so ventilation is the answer if you can arrange it. Make sure bilges are dry and any mattresses, clothing, covers etc are well aired and dry.
Once you've got rid of the most obvious causes then it's usually fabrics and other soft surfaces that cause the problem.
Although it seems a strange way of solving the problem, pop into a pet supermarket and buy a Simple Solution Cat Urine Odour remover spray. This will remove the source of the smell, rather than trying to mask it. It breaks down the organic compenents that cause the smell. You need to spray liberally, not just a surface coating, it needs to get to the root of the problem, then wait a while for the enzymes and bacteria to break down and remove the problem, it doesn't work overnight
You don't give any details in your bio but have you considered leaving a dehumidifier running? Damp and damp smells just disappear. Furthermore, you can leave all the soft furnishings on over the winter and use the boat year round. Also, keeps air dry around engine, mechanical gear, tools, etc. so your deterioration is much slower.
Lemain, do you run the dehumidifier even when you're aboard? I have had success leaving a dehumidifier on when my boat's in a yard but this winter I expect to spend one or two nights a week aboard. I just wonder if the dehumidifier is really needed with me in and out of hatches etc.
In the Centaur, which was just a weekend and holiday boat (marina based), I left it on whenever we were away, on a timer to let it de-ice, though the silica gel types are immune to ice and are better for this application, I think.
When we started to live aboard, over winter in Chichester, we put both of our dehumidifiers on board and ran them round the clock but found that we could manage with one. So with two living aboard, in Chichester, over winter, with electric convector heating, one dehumidifier worked really well and removed all the condensation we would have had without.
When we left for the Med, we left the dehumidifiers behind based on my experience over nearly 30 years on a yacht in north Italy. We have been here in southern Spain for just over 2 years and we have managed fine without one. However, we are in one of the warmest parts of the Med (for wintering). I think you'd be glad of one in Barcelona, the Balearics, Rome, ....
-Shampoo soft furnishings and any carpets
-Clean hard surfaces
-Steam Clean engine bay and bilges + "bilgex"
-Dehumidifier
-Put a toilet cleaner down the heads which won't damage the seals
- Put cleaner down sinks as they tend to get a build up in the pipes.
- If it still smells then give me a ring lol!