in reply to Carriage return handling difference between 5.6 and 5.8

Have you tried turning off buffering?
$| = 1;
I'm not sure if it's really a difference between 5.6 and 5.8 -- I suspect there may be something else in your environment or usage for your script(s) that is causing the difference in behavior.