Unfortunately, I barely know any Python. Here's what I can tell you: when you access Python through the cgi-bin method, it loads as CGI through Apache's mod_cgi. On the other hand, when you access Python through the Django method, it loads as WSGI through Apache's mod_wsgi. We only have one version of Python installed, but perhaps different Python eggs are preloaded for each system. Perhaps you should try manually added a Python egg for urlopen in your Django app? Also, try installing SnakeCharmer (looks like this) to check if urlopen is installed.
I would probably try to direct this question at a Python-specific forum. If they tell you that your host is at fault, make sure to ask them exactly what I need to do to fix the problem and I'll do my best to help.