Well, the problem is when you run a perl script, it runs as a child process of the shell you call it from, so changes to the child don't take place in the parent. The only way that I would know of would be to actually add them to the .bash_profile or .mycshrc file, so they are automatically set, but that's kind of a permanant thing, and still doesen't work for your problem, because you have to restart the shell.
You may be able to fake it with an exec or system or backtick call to a shell with setenv...., but this may create yet another sub-shell. You'll have to read the docs to see if one of these calls actually uses the shell you are running the script from. I hope that makes sense, if not, let me know and I"ll explain further. As always, I hope that helped!
Disclaimer:
Beware: Studies have shown that research causes cancer in lab rats.