class.upload.php is a powerful and mature PHP class to manage uploaded files, and manipulate images in many ways. The script is available under a GPL license.
more info about the class
Are you able to use a debugger such as xdebug to provide me with a stack trace?
Also, do you have a PHPinfo() somewhere? Which version of GD is on your server on which the upload fails?