your problem is most probably none of perl, but has to to with the file permissions on your server. for instance: on a debian box the webserver is called www-data, group www-data. if you want your cgi-scripts to open files, you should take care that they belong to the server.
language is a virus from outer space.