How do miners handle transactions when a different miner creates a new block?
Not all blocks are mining the same transactions in their respective proofs-of-work. Each miner collects enough transactions via gossip until they reach the block size limit. Not all transactions will make it into a certain block, so those will be more likely candidates to make it into the next block. Miners decide which transactions to include in a block with the following equation: 

priority = sum(input_value_in_base_units * input_age)/size_in_bytes