I am having this same issue, too! No idea on how to solve the problem.
Just had this and figured it out. The reason is php uses a temp folder to first upload the files to and then copies it to the actual destination folder taking with it the permissions inherited from the original temp folder.
By default that folder is c:\windows\temp but you can change it in your php.ini (probably in c:\program files\php\php.ini > then edit the property upload_tmp_dir).
I created a folder “C:\inetpub\phptemp”, applied the IIS_Users permissions and pointed the php.ini variable at it and all is good again.