Così funziona! Era l'uovo di Colombo!

open FILE, "<", "G:/cartella_esterna/cgi-bin/prodotti.txt";

A quanto pare, pur impostando la directory virtuale, il percorso dei files deve essere completo. Oppure esiste una qualche direttiva per risolvere il problema?