The urllib2 documentation says that timeout parameter was added in Python 2.6. Unfortunately my code base has been running on Python 2.5 and 2.4 platforms.
I think your best choice is to patch (or deploy an local version of) your urllib2 with the change from the 2.6 maintenance branch
The file should be in /usr/lib/python2.4/urllib2.py (on linux and 2.4)
/usr/lib/python2.4/urllib2.py