Programming wise, I think it is not difficult to fix retroactively. From what I observed, the base value is unaffected, but the bonus (different variable) got saved, and reapplied atop when loaded. So just clearing the bonus should fix it. The reason why it is only happen on recruiting map, if I have to guess, is that when loading a recruiting map, the game have to destroy the original companion object on the map and loaded the in-party clone, some how there must be an error in the process. May be loading equipped save data as nude data and reapplied the equipment bonus again.