An ozone generator is the correct tool for the job.
As far as sprays goes. Try a product called Oust. Don't get the smelly ones, just the natural one. It's hands down the best for getting rid of smells, better than febreeze.
This spring I rented a cabin in the Smokey Mountains. We walked in the door and were hit by the funkiest fishy musty smell, I thought I was going to hurl. We headed back into town and got a can of Oust. I let off about half the can in the cabin and left to get something to eat. Came back a couple hours later and the smell was gone. We spent the week there and never got that can out again.
I also used it to get rid of the air freshner smell that my dealer decided to put in my truck after they serviced it. It was the most horrible baby powder smell. The odor just hung in the truck for a couple weeks. I finally sprayed Oust in it for 10 seconds and killed it all off. Many that stunk!