Calentamos aceite en una sartén grande o cazuela a fuego medio - alto. Cuando esté humeante, añadimos el pollo en 2 o 3 tandas, asegurándonos de no sobrepoblar la sartén. Frie hasta que este tostado, unos 3 minutos por lado. Una vez hecho, resérvalo. (El pollo se acabará de cocinar en la salsa).
En la misma sartén calentamos la mantequilla con el aceite que nos falta. Freímos la cebolla hasta que empiecen a sudar (unos 6 minutos) mientras rascamos lo que se haya pegado en la sartén.
Añadimos el ajo y el jengibre y salteamos durante 1 minuto hasta suelte la fragancia, añadimos el cilantro molido, comino y garam masala. Dejamos cocinar durante 20 segundos, para que suelten el sabor, mientras removemos de vez en cuando.
Añadimos los tomates triturados y la sal. Dejamos hervir a fuego lento durante 10 - 15minutos, removiendo de vez en cuando, hasta que la salsa comience a espesar y se vuelva de un color rojizo oscuro - marrón.
Retiramos del fuego y trituramos toda la salsa con una batidora de mano o batidora de vaso hasta que esté lisa. Quizás necesites añadir un par de cucharas de agua para ayudar a que se triture. Trabaja en tandas si lo necesitas, dependiendo del tamaño de tu batidora.
Devuelve la salsa hecha puré a la sartén. Añade la crema o leche evaporada, azúcar y el zumo de limón. Remueve hasta que se integrén todos los elementos con la salsa. Añade el pollo a la sartén y cocina durante 8 - 10 minutos adicionales hasta que el pollo esté hecho, la salsa esté espesa e hirviendo.
Para servir se puede picar cilantro fresco encima y servir con arroz basmati.