If a node remove a transaction from their mempool due to any of above reasons, it's completely removed and it's like that it has never received that transaction.
The node may receive the removed transaction if it's broadcasted again.
Thank you. Who (or what process) decides if the removed transaction will be broadcast again?
Just as you have been told, each node has their own individual mempool, there is no general mempool, so node A can remove your tx from their mempool, but node B could still have it in theirs, this is because nodes receive tx's at different times and they can also configure their mempool differently on how long a tx will remain in their mempool.
The BTC network is decentralized, so there is no single authority that decides anything, you can rebroadcast you tx and some wallet softwares also rebroadcasts tx's automatically. Take note that rebroadcasting tx's does not mean that it will be added into a block and confirmed, if your tx is stuck, you either have to use rbf or cpfp to get it confirmed.