I fully believe this is feasible, and urge you not to give up. I almost posted once about some ideas I had in making this work, but was afraid of the flaming that would likely follow.
A couple suggestions I have to minimize the chance of errors: use small, slow, identical USB sticks, and to modify the sticks' filesystems via. hex editor, to ensure the data has precisely the same alignment on both sticks.
(Note: If one had the proper equipment, analysis of the data read process by hardware logging of the USB stick during the update would effectively identify the exact moment when sticks should be swapped. This would be done by piggybacking a USB debugger off the USB stick's hardware, probably with a quick soldering job and a *nix box.)
The one specific problem I see with this procedure is the fact that the PUPs are encrypted. Because of this, loading part of one PUP and the rest of another would be very likely to result in garbage that won't decrypt properly, if at all. However, it would be theoretically possible to generate padding such that the beginning part of the data on stick #2 matched the part of the data loaded from stick #1 before the swap.
These are just my two cents, and all I hope is that someone with more skill than myself can build off of them.
Good luck, and don't listen to the haters!