Thank you. Who (or what process) decides if the removed transaction will be broadcast again?
Anyone in the world that has the raw transaction can rebroadcast the transaction. If the transaction is rebroadcasted and it's still valid, it will be recevied by nodes again.
Again, take note that any node has its own mempool. Even if majority of nodes remove a transaction from their mempool, it's possible that some still have it and the transaction gets confirmed.