I had a hard time searching threads and trying different things to get Windows 7 SP1 (error code 0x800f0900, 0x800F0A12) installed on a dualboot machine with both OS on the SAME HDD and a separate EFI partition. After trying everything under the sun mentioned by MS and on forums I finally got it. It may have been a multi-step process however as there was another update just before SP1 that would also fail.

1. Boot into Ubuntu and use GParted to set the flag on the msftres partition to boot.
2. Shutdown, boot into Win7 and attempt updates (except SP1). Reboot into Win7 to complete any updates as necessary.
3. Shutdown, boot into Ubuntu and use GParted to set the flag on the EFI partition (mine is /boot/efi) to boot.
4. Shutdown, boot into Win7 and attempt updates (SP1). Reboot and complete updates. Run Windows update and reboot as many times as necessary until there are no more updates (After SP1 was successful, I had five new updates.).
5. Shutdown and boot into Ubuntu to use GParted to reset the flag to bios_grub on the EFI partition.
6. Reboot and verify both OS operate correctly when selected.