What session driver are you using? Depending on the driver you might be hitting a storage limit.
For example the database driver store the session payload on a text column, which is limited by the underlying DBMS implementation, on MySQL it is limited to ~64Kb.
The cookie driver has a ~4Kb limit that is what generally browsers allow a cookie to be sized.
Redis and Memcached driver sure have limits too, but I am not sure which they are.
What I mean is that, depending on the session driver you are using, some of your session content can be lost when persisting the session to storage. As the flash and validation messages are stored in the session itself that can be the reason you are missing it.
Also there is a memory limit per fpm process, maybe your session becomes to huge you hit that limit. From your description this is unlikely to be the cause as your requests are not failing.