If the odor resulted from long standing issues, then the odors would have sunk in everywhere, the walls. floors (beneath the carpets) etc.
I got such issues when South Asian (Indian) tenants vacate, and the rental smells of curry, and non-Indians, get nauseas going thru the place, which made it impossible to rent out. Sometimes the smell is so strong, it nearly knocks me out too.
First, the ceilings and walls would have to be painted, and I would use a coat of primer that would help seal in odors, that would leak thru latex. Then, if need be, seal the floors, if you got floor boards, use polyutherune. There are other sealants out there by different commercial names.
And for curry, I would give the stove a thorough cleaning.
The problem I found in doing rentals though, is often a week or two goes by after a thorough cleaning and painting, I still smell a whiff a “curry”, and renters looking are still bothered by it, sniff and ask “what’s this”??? What I do is I would come by with a can of high gloss “oil based” white paint, start two hours before showing, doing baseboards, window frames, radiator covers, while showing the place. Renters would smell the paint, rather than the curry.
I find oil based paints emit a very strong odor.
Baseboards and frames look much better trimmed this way, and renters often compliment me on the extra touch and care when I do this. Better have complments on how nice the place looks rather than how smelly it is. Most of the time though, if not for the smell, just a coat of latex paint would do.
I find that strong smells would go away after two or three months time, oil based paint, curry and all.