It's strictly tsmuxergui that creates a PGS stream from text when you create an M2TS, wasn't aware we were talking about MKV.
Actually, we were talking about M2TS, not MKV. So yeah, tsmuxer creates a PGS stream on-the-fly from text, and that PGS stream is the one flickering. I've seen something like this before and fixed it, but apparently this is a different situation because my fix didn't work.
Right: didn't know TSmuxer could create PGS on-the-fly.
Have you tried something like GoSup to create PGS from srt, or passed the PGS through BDsup2sub?
Since 720p24 is not a usual Bluray resolution, maybe TSmuxer is automatically changing the framerate for the subtitle to its nearest supported value.