QUE ???????
Hola, antes que nada te comento algo conceptual: el script CGI que tienes está usando un módulo (externo al intérprete de perl) que se llama también CGI...Si no lo tienes instalado ese módulo CGI Pueden ejecutarse perfectamente bien los scripts que no usen ese módulo, pero los que tengas use CGI; NO PODRÁN ejecutarse, ya que buscan el módulo externo llamado CGI y al no tenerlo instalado tira error...
Pero tu problema está en otro lado si ejecutas ese script...Cuando se ejecuta un script si no le tiras ningún dato a la pantalla efectivamente sale un mensaje de error.
prueba con
#!/usr/local/bin/perl -w
use strict;
use CGI;
my $cgi = new CGI;
my %form = $cgi->Vars;
$nombre=$form{'usuario'};
$pass=$form{contra};
print "Content-type: text/html\n\n";
print "$nombre - $pass";
exit(1);
Ahora con los módulos, lo que te digieron en tu hosting verdaderamente me da risa...Visitá la gran conocida página de cpan en donde están todos los mósulos de perl
http://search.cpan.org/
y visitá la documentación del módulo CGI
http://search.cpan.org/~lds/CGI.pm-3.07/CGI.pm
Ese módulo CGI como todo módulo son librerías externas al intérprete de PERL...
Espero que te sirva
Saludos