Skin the onions and blanch them in hot water for 3 mins, then ouree them to form a paste. Do the same with tomaotes, unless you are using tomato puree directly.
Take 1 tbsp of ghee, heat in a pan for 2 mins, the saute the paneer cubes in it till golden brown; Now take 1 cup hot water, add a pinch of salt and turmeric powder to it and immerse the paneer cubes in it for 10-12 mins. Then remove the pieces, drain them on a tissue paper and keep aside.
Heat 2 tbsp of butter in a pan, add the bay leaf and the cloves, then add the onion paste and saute till light-brown. Add ginger-garlic paste. Saute for 3 minutes. Add chilli powder, followed by the cashew paste and fry for 5 mins.
Add tomato puree, crushed kasuri methi,coriander powder, turmeric powder, garam masala and salt. Stir and let it simmer for some time.
Add the paneer cubes and simmer for 4-5 minutes. Add a small cup of water and let it cook on medium heat till you get the desired curry consistency. Remove from fire, stir in remaining butter and fresh cream.
Garnish with coriander leaves. Serve the paneer butter masala with any bread of your choice, pulao or simply jeera rice.