Add chicken to a bowl. Add all ingredients mentioned under marination - salt, black pepper and lime juice. Mix well. Cover and refrigerate for 30 minutes.
Heat 2 tablespoons of ghee or oil in a pan on medium-high heat. Add the marinated chicken pieces. Cook until they are seared and lightly golden on all sides. Take the chicken out and set aside.
In the same pan, add onions, ginger, and garlic. Saute for 4-5 minutes until the onions have softened.
Transfer to a grinder, add cashews and make a paste.
In the same pan, add the remaining 1 tablespoon of ghee or oil. Add shahi jeera, bay leaf, green cardamom, and cloves. Saute for 30 seconds so the whole spices release their flavor.
Add onion cashew paste and saute for 4-5 minutes until oil separates. Add cumin and coriander powder, and give it a stir.
Add the chicken back and cook for 2-3 minutes.
Reduce heat to low. Add whisked yogurt and mix well. Keep stirring and cook for 2-3 minutes. Cover with a lid and cook for 8-10 minutes or until chicken is cooked through. Stir in between once.
Add Garam Masala, freshly crushed black pepper, and Kasuri methi. Add more salt if needed. Give a stir. Add water if needed to adjust the consistency of the gravy.
Garnish with cilantro. Serve chicken kali mirch with roti or naan.