Mix chicken with all marinade ingredients and let it rest for at least 15 minutes.
Heat oil in a deep pan and sauté cumin seeds until they crackle.
Add chopped onions and cook until golden brown.
Stir in ginger-garlic paste and cook until the raw smell disappears.
Pour in tomato puree and add salt, turmeric, red chili, and coriander powder. Cook until oil separates.
Add marinated chicken and cook on high heat for 5 minutes.
Lower the heat, add water, cover, and let it simmer for 20 minutes.
Fry the sliced onions separately until crispy and mix them into the gravy.
Sprinkle garam masala, kasuri methi, and lemon juice before turning off the heat.
Garnish with fresh coriander and serve hot with naan or rice.