UVs resetting to same random pattern when I close the file
Keyframed UVs

As most of all the properties, UV island coordinates can be individually keyframed.

By examining the Outliner and the Graph editor you can realize that each island has fixed location coordinates for the current animation.



If you modify the UV island position and save without overriding the keframes values, the island would come back to the stored position.

If those keframes are needed, you must Insert a new keframe upon the old one before saving.