In my "old" days, when there was no such thing as Altiris Patch Management or other solution as WIndows Update (considering I think it is not a solution at all), I remember there were about 5 types of installation protocols for patches and updates available from M$. Every one of them you had to approach differently. But with all of them it was possible to delay the reboot and go for the next one. When all were installed, the reboot was done in a controlled fashion (as it always should be).
We use a distribution environment where one could create a max of 5 (or was it ten?...) reboots in one script. Command was "Reboot 1", the system did a reboot and it returned after the reboot to the point where it left at the label ":Reboot1". But that was a propriety thing (CCM/iCommand/Livestate). Going to Altiris in some situations I came across clients without Patch Manament but in need for a solution like yours. We created a process that copied the needed script for all patches and updates and run that script in the runonce over and over again untill everything was installed using the same technique. But again, that is not always needed as you should be able to postpone 99% of all reboots with the standard msi commands to do so.
Hoped it put you on the right track.
Happy Scripting ;-)