There are a number of ways to handle this. The commands rsync and rdist have been mentioned. But one easy way to manage files on multiple servers is to keep the files on one server and then
NFS mount the directory on all the machines that need these resources. Then your perl scripts can do local writes and the question of remote open commands is moot.