Could you add an "IF" clause that goes like this in pseudo code:
IF one month(cargo space = not accessed && ship = not boarded) THEN stop cargo rot at 90%
Why?
This will mean that we have a short window to get what ever loot was in the ship when it was abandoned. A little something for waiting over a year for it to disappear from our coasts.