Is emacs still open, or do you exit it before you try to run your script? It sounds almost like a program is putting a lock on the file, preventing it from being read by another application. It's not inserting any characters.
in reply to Hidden Characters?
Update: Typically you get this error when you attempt to execute or write to a file that is currently being written to. So it may have less to do with locking and more to do with slow writes? Note that you can get this error against the Perl binary itself, not just a script. Don't be misled by the word "text".
The solution is just to wait until Emacs is finished saving the file. If you're sure this is the case, and you continue to consistently get this error message even after exiting Emacs, maybe do an 'lsof' on the file and see if you can identify any other applications that have it open.
Update: Note that Re: Hidden Characters? makes these theories unlikely. Very weird problem.