Heat oil in a deep, heavy-bottomed pan or wok.
Add the finely chopped onion. Sauté on medium-high heat until the onions turn golden. About 7-8 minutes.
Add the ginger-garlic paste and sauté for 2 minutes. The ginger tends to stick to the bottom, so be sure to scrape the bottom while stirring (without damaging your pan).
Now add the turmeric, cayenne, cumin, and coriander powder. Sauté for 1 minute, stirring well.
Add the chopped tomatoes. Cook the tomatoes for 4-5 minutes, until the oil rises to the surface and the tomatoes are tender. If you are using tomato paste, then sauté for 2 minutes.
Now add the hot water. Stir the pot.
Cover and cook on medium for 5 minutes, until the moisture is reduced.
Now, add the paneer and stir gently, so that you do not break up the paneer.
Cover and cook the paneer on medium-low heat for about 2-3 minutes.
This should give the paneer enough time to absorb the flavors of the gravy. Do not overcook, as the paneer tends to become hard.
Remove from the burner and let it sit for 5 minutes before pouring it into your serving dish.
Garnish with the chopped cilantro.
This dish can be served with any of the following accompaniments: roti, paratha, pita bread, naan, plain white rice, or any simple pilaf, such as Zeera rice.