Nodes don't earn anything for validating transactions.
With running your own node and help the network to be more decentralized. The other advantage is that if you run your own node, you wouldn't rely on third parties for checking your balance and transactions history and you can broadcast your transactions by yourself and in this way, you can protect your privacy.
This is a big use of validating transactions like it means we don't need mixers anymore, as no one would see our data, well, just to clear things out, if a user made a transaction and broadcasted it using its own node, then it will be sent to other nodes of the network for verification right? and when we broadcast our transaction, we pay the fee? and to whom? or we save a fee? (just asking, if you feel like I am being way more dumb then You can ignore this reply, but I hope you will not

) And another question is, if someone has our address then he can still use that address on explorers to check our data right? then what type of privacy does it provide us?
Right, but just to be more accurate:
Miners don't have to receive transactions from nodes. It's possible that a miner include their own transactions to the blockchain or they receive a transaction directly.
If a miner include an invalid transaction, the block will be rejected by nodes.
Thanks for this information and thanks for every information you have given to me, I am feeling like a newbie which I am it is just I never tried to learn these things, I thought I couldn't be a miner so why spend time on it. I guess I was wrong, I should have learned these basic things.