Step 1: Marinate the Chicken : In a large bowl, mix yogurt, lemon juice, chili powder, turmeric, garam masala, salt, and ginger-garlic paste. Add the chicken pieces, coating them evenly in the marinade. Cover and refrigerate for at least 1 hour or overnight for best flavor.
Step 2: Cook the Chicken : Heat 1 tbsp butter and 1 tbsp oil in a large skillet over medium-high heat. Add marinated chicken pieces and sear until golden brown (about 5–7 minutes). Remove from the pan and set aside. (They will finish cooking in the sauce.)
Step 3: Prepare the Butter Sauce : In the same skillet, add the remaining butter. Add chopped onions and sauté until soft and golden brown. Stir in garlic and ginger paste, cooking until fragrant (about 1 minute). Add garam masala, coriander, cumin, and chili powder. Stir well for 30 seconds. Pour in the tomato puree, mix, and simmer for 10 minutes until it thickens and deepens in color. Add sugar, salt, and cashew paste (if using). Stir in the cream and yogurt, mixing gently until the sauce becomes smooth and rich. Return the seared chicken to the pan and simmer for 10–12 minutes on low heat. Sprinkle dried fenugreek leaves and stir well.
Step 4: Cook the Basmati Rice : Rinse the rice under cold water until the water runs clear. In a saucepan, bring 3 cups of water to a boil. Add salt and ghee. Add rice, reduce heat, and simmer covered for 12–15 minutes. Turn off heat and let it rest for 5 minutes before fluffing with a fork.
Step 5: Make the Raita : In a small bowl, whisk yogurt until smooth. Add grated cucumber, mint or cilantro, cumin powder, and salt. Mix well and refrigerate until serving.