Unfortunately, rancidity will win in the end. The chemical processes of fatty acid decay, once initiated, will go on and “spoil” the whole batch. The decay products are helping in this decay, that's why rancidity often occurs in form of spots (=DOS) where the chain reaction has started a bit earlier than across the whole bar.
However, there might be ways to remove some of these decay products, hence prolong the life of the soap.
@DeeAnna has collected some basic and also advanced tricks on
Rancidity and DOS | Soapy Stuff . There she refers to this very interesting SMF thread:
My procedure for salting out that talks about removing nasty impurities by salting-out (for soaps) or salt-water wash (for coconut oil).
If I had to make soap from rancid oils, I'd do all of the above: First wash the oils with salt water, then saponify at negative SF, then salt-out multiple times. Finally “post-cook” additions: replace the lost glycerol, add generous amounts of citrate/EDTA/gluconate and ROE/BHT, and a bit of a robust superfat (olive, shea). Avoid known rancidity-accelerating additives like titanium dioxide, or peppermint/lavender EOs.
@pjones
What type of oil do you have? It makes a huge difference how to formulate a recipe, depending on what oil is the one in question.