For those still interested,
As I said, I gave up on finding the linux error.
With that said, as the kernel stalls, I definitely consider this a linux error.
If the application does something naughty it would be normal that the application would crash. The OS however should not.
On application side, I made things more robust.
I close and re-open the serial connection if the data package is not read in N attempts.
I close and re-open the serial connection after each successful data package in stead of listening for ever.
I close and re-open the serial connection if I read unexpected characters.
no idea whether it helps. I guess I will have to wait multiple month.