CNN -> Linear:
No. The batch size should never be flattened.
You keep  (10, 100) and feed it into a (100, 1) linear (or whatever) to get a 10, 1 - one prediction per batch item.
You could concatenate the (10, 100) max with the mean (over the seq_len=5) to get a (10, 200).
CNN -> RNN -> Linear
Here you would feed (after permuting the axes) the (5, 10, 100) into the RNN (say 100->100) and then get something of the same shape.
Then you could take torch.concat([o.max(0), o.mean(0), o[1], -1) of shape 10, 300 and feed to a linear as above.
Best regards
Thomas