Estás equivocado, el salto línea no tiene nada que ver con la función str_replace.
Si obtiene coincidencia elimina.
Puedes probar tal cual lo pones:
Código PHP:
$str='1 Emperador 280 Gr$6$6
1Chetos Bolita 80 gr$6$6
1Coca Cola 2 Lt$20$20
1Mamut 180 gr$4$4
1Agua Cristal 1 Lt$7$7
1Coca Cola 2 Lt$20$20';
y elimina bien y ya sea con <br> o \n los saltos de líneas no afectan al resultado.
Código PHP:
$str='1 Emperador 280 Gr$6$6<br>
1Chetos Bolita 80 gr$6$6<br>
1Coca Cola 2 Lt$20$20<br>
1Mamut 180 gr$4$4<br>
1Agua Cristal 1 Lt$7$7<br>
1Coca Cola 2 Lt$20$20<br>';
Comprueba el valor que tienes en la variable de session.