That explains it.
Look into the cache directory where stuff packed into your executable is extracted to (it's usually called /tmp/par-USER/SHA1CHECKSUM). You should see a file called myScript there (i.e. with the same name as your packed executable), but it is NOT a copy of your executable. It is a special purpose perl interpreter (and always the same).
Now the packed executable runs in an environment where PATH has been augmented with the cache directory. Hence when you simply invoke myScript (i.e. without a path), you likely will run the file myScript in the cache directory. The error message you saw would support this theory.
Try to use system("$0 ...") instead. That should run the original executable (or script in the unpacked case). This has the addidtional benefit that you don't have to edit your script if you ever decide to rename myScript to something else :)
Cheers, Roderich