in reply to Filter::Handle - Deep Recursion Error

I think the indirect object notation is tripping you up. Plus, you're reading a line from FH1, not printing to it. Your problem might be solved with:

print FH1 "$_\n";

but I'd be more comfortable with:

FH1->print( "$_\n" );