I
had once a similar problem with an OKI laser printer. The culprit was a faulty
printer memory.
Every time I've printed the printer setup page, printed right after turning it on, the
memory start address and the available memory were shown different values.
P.S. The dealer who sold us the printer was swearing that it is normal to have different memory numbers when you start the printer!
Since your on unix, you could use the tee command to send the print data to a file as well as to lpr.
Then when you have an issue, pull up the file, and make sure there everything is there.
If it's missing from the file that tee created, it means it was before the handoff to the printer
if it's in the file that tee created, then it's either cups or something with the printer itself.
instead of your "lpr -PPR8" you have " tee -a /tmp/testing | lpr -P PR8" and everything that would
go to the lpr command will also be send (and appended) to the file /tmp/testing.
As Will noted, check the printer configuration, and see if it has an xon/xoff setting and if it's enabled.
I also had an issue when I would send raw PCL to our printer, if the length of the line was too long it would get
truncated, so we had to start adding CR's which the PCL ignored but it stopped the printer driver from truncating.
I'm not sure if that issue was a Universe issue doing the truncating - we were using PRINT ON x to build the job.
George