Using ffmpeg, how do I trim and overlay two different time periods from the same input?
The parallel processing is happening slow enough that FFmpeg is flushing frames in buffer for the first trimmed clip. You can use the fifo filter to avoid that. Also, you can use vstack and skip the nullsrc/overlay route.

ffmpeg -i input.avi -filter_complex "
    [0:v] trim=0:60, setpts=PTS-STARTPTS, fifo [v0];
    [0:v] trim=60:120, setpts=PTS-STARTPTS [v1];
    [v0][v1] vstack [out]" \
-map "[out]" output.mkv