If you upload the new version of the document over the old version,
using the exact same url, I believe that the document properties are
retained. I have done this a couple of times using code and found
this to be the case, but did not test this to any extent.
The old version will then be retained in the version history of the
document library.