why does the 0 tx block have to come "immediately" after a large block?
They don't. Empty blocks can come after any sized block. But I just showed that F2Pool is
more likely to produce an empty block when the previous block was large, than when the previous block was not large.
This makes sense to me because I expect that for large blocks, there's more time between when F2Pool has
just enough information to begin hashing, and when they have processed the block and sent a new
non-empty blocktemplate to their hashers to work one. If this time is longer, then there's a better chance they get lucky and mine an empty block. See what I mean?
i think so which is also why these 0 tx blocks usually come within a minute of a large block?