From the error messages I would think the error is not in the code you posted, but instead on the module Mail::Sender.
Update 1: -
next paragraph proven wrong, and I decided I don't like Mail::Sender :)
Try moving the new Mail::Sender and $sender->Close outside the loop and see if that fixes it, or look inside Mail::Sender for clues.
Update 2: -
message "Mail was sent OK." is premature. (and let me in the wrong path)
On a side note, you line reading could be done with one regex instead of two and a split:
my ($email, $file) = $_ =~ /^'(.*)','(.*)'$/;
or something to that effect
tstock
++$|; # I call this the plunger. it cleans the pipes