I ended up buying a second unit (for Android) with a broken microUSB port, but otherwise still functional. After dumping the flash and comparing them, there was no obvious data corruption, as most of the differences were obvious; e.g. calibration data, various metadata (last use, serial number, etc), while a few others were not, including some code segments. Anyway, since repairing the second unit was much more straightforward, I decided to set this one aside, and focus on that one instead.
It turned out that repairing the microUSB port was more difficult than expected, because it's embedded within an injection-molded plastic assembly. After playing around with it, I realized that building a replacement would be easier, since the shell and pins on the microUSB port are impossible to replace without damaging the whole assembly. Additionally, since my phone has USB type-C, it would be more useful to use that connector instead of microUSB. Plus, it seems Seek themselves don't even sell a type-C version.
Long story short, this gave me an excuse to learn and play with 3D printing, which involved modeling up the replacement part in CAD software, and printing it out in plastic. This took a few attempts due to issues with model accuracy, printing resolution, tolerance, minimum wall thickness, support material, etc. In the end, I used Shapeways for the final print. Additionally, I also had to build a small interface PCB to mount the type-C connector, and handle the USB type-C signaling requirements on pin CC1 for operating in USB 2.0 mode. This also took a few iterations, due to changes in the board layout (to fit it in the printed plastic assembly), OSHPark's fab accidentally using 1.6mm FR4 instead of 0.8mm FR4 for the straddle-mount type-C connector, incorrect signaling on pin CC2, etc.
type-C on the left, broken microUSB on the right.
board v1.0 with the printed plastic assembly on the left. it folds to the right in order to fit on top of the Seek PCB. optional FFC connector, if the Seek microUSB FPC is unavailable.