I have a question. If for each transaction, the hash is calculated and so the pool who calculates it gets the bitcoins as reward, now getting reward means bitcoins gets added to your wallet, but this also becomes 1 transaction so doesn't it require that transaction to be included as well? And if yes, then doesn't the process become recursive?
When you are mining, you always compute hashes of blocks assuming that you will be the one to find the block. So you already include this special transaction, known as a coinbase transaction (not to be confused with a transaction made using the service Coinbase - here coinbase just means coin generation), in the block you're hashing. If you're right, then great, you've found a block and included a transaction that sends 25 BTC + transaction fees to yourself. If you're wrong, and someone else finds the block first, there's no harm in that. Just give up on the current block and start working on the next one.
For a more technical side, when you compute a hash you're really hashing the block header. It includes a bunch of things, one of which is the hashMerkleRoot, a hash of the transactions in the block.