in reply to 'strict refs' + 'strict sub' = suck.

open(FILE, $file) is fine, even with strict subs, but if you're concerned that some other sub in the same package might need simultaneous use of the same filehandle name, then you can do this:
sub mysub { my $fh = \do { local *FILE}; open($fh, ">myfile")... ... }
Note that later versions of perl (5.6+ ?) will autovivify a scalar to a file handle so you can just do this:
sub mysub { open(my $fh, ">myfile")... ... }