It's been a long, long time since I fooled with a Perl CGI script, but give these a try:
2. You can always check if the file uploaded correctly by browsing or editing it in the File Manager
4. Remove the space between ! and /. It's also possible that you're pointing to the wrong place. On your server, run the command find / -name perl -print 2>/dev/null (SSH command line, or a one-time cron job) to confirm where Perl is.
8. Is this the HTML produced by the CGI script, as run on the server cgi-bin, or produced locally on your PC?
How are you invoking your Perl script on the server?