I'm not sure what is really going on but one thought is file descriptors are not being freed up (or are not being freed up fast enough). Are you running multiple instances of this script?
My other thought would be an issue with either the ComSpec enivonment variable or with $_fullCmd. To help rule this out you could store everything in a string (or array), print it out, and then pass it to system.
Also, you should be able to look at your system or application event logs to find out which patches were actually installed and see what Technet or the KB says about them. If the system was rebooted after the patches were applied then it is also possible the cause is not related to the patches (i.e. something was changed but the change did not ake effect until after the reboot). If they were not rebooted after the patches then you might want to consider that (espcially if Microsoft recommends it).