I tried creating a 3 frame blank but it didn’t fix the problem (even though these are captions and not subtitles I still tried).
Then it occurred to me that all the skipped captions had a short duration (~1 second, give or take a few frames).
When I extended the caption hang times to just under 2 seconds, the all showed up fine. I don’t know if there’s a specific minimum hang time, but clearly it needs to be over 1 second, closer to 2.
The downside is that those captions now hang a little too long to sync perfectly to the dialog, but it’s a pretty minor issue. The bigger problem is that this is a really irritating bug in Encore as far as I can tell, and it’s pretty weird that I can’t find anyone else who’s complained about it before. Oh well, now you know.