First, make sure that you don't just keep the food in your sims' inventory, because that will cause the food to go bad quicker. Always put it in the fridge.
If the food is already in the fridge and it keeps going bad, then it's because all food will go bad if left in the fridge too long, regardless of what level cooking skill your sim has. Try buying a more expensive fridge. Better refrigerators will keep your sim's mood from going down due to "fridge food" (food that tastes like the other food in the fridge), so it might help keep food fresher longer as well.
If you already have a good fridge, then try getting rid of that fridge and replacing it with a new one of the same type, as a way to "reset" it.
Hope that helps!