You can do "dd if=/dev/zero of=/dev/mmcblk0p3" before and after updates if you want to. The startup scripts format it when it fails to mount, and copy stuff from /opt. That means any updates that could affect /var/local are just COPIES of data in /opt. Look in the startup scripts. You should save user settings before an update (collections database, locale, timezone, etc) and restore them after an update and /var/local rebuild.
This is just a suggestion of things you can check into (especially the scripts that rebuild /var/local). Of course it would need more research and development before you use it, but it may simplify the OTA update problem.
Removing the /var/local partition (after backing up user data such as his collections database, locale and timezone settings) to force a rebuild is perhaps more useful for the "bricked kindle recovery" methods I have been developing, but I though it might be worth studying for this application as well.
EDIT: If Post #12 should be before this post as it says, then the text in Post #12 can be moved to the end of Post #10. That would get this thread back in sync, and I can remove this message. Also, you can read (and search) the IRC archive if that may help you remember some missing details:
http://kindle-synchrone.dotcloud.com/