I'm not sure there is a way to do what you're asking. PHP will not start processing the file until it has been uploaded and it has a "handle" on the file itself.
In theory, if it were a very low traffic site (perhaps one upload at a time), you could change the default temp directory (upload_tmp_dir) in your php.ini to something that will not be used for anything else, then measure the size of it by firing off a second script. You wouldn't know the total size of the incoming file, but you could provide a status like "5MB complete...10MB Complete..." Cheezy, but it's something.