Prep the chicken: Add the chunks of chicken to a bowl along with the tablespoon of chili powder, teaspoon of salt, ½ teaspoon of coriander powder, ½ teaspoon of cumin powder, and ¼ Teaspoon of turmeric powder. Combine until the spices coat the chicken and set aside for 20 to 30 minutes.
Brown up the chicken: Get out a large walled pan, add 2 tablespoons of oil to it and place over high heat. Once the pan is hot toss in the chunks of chicken and let them cook on one side undisturbed for 2 to 3 minutes. Then flip the chunks of chicken over and let them cook for another 2 to 3 minutes. Transfer the partially cooked chunks of chicken to a plate and set aside.
Make the curry sauce: Turn the heat down to medium and add 2 tablespoons of butter to the pan. Once the butter has melted toss in the onion, garlic, and ginger, and sautee for 3 minutes. Then toss in the tomatoes, cashews, sugar, and remaining spices to the pan and continue to saute for another minute. Finally add a cup of water to the pan, cover it, and let it simmer for 20 to 30 minutes.
Blend the curry sauce: Carefully transfer the contents of the pan to a blender, and blend for 3 to 4 minutes. Once it is smooth return this sauce to the pan. Also if you want the sauce to be extra smooth you can strain it through a sieve before returning it to the pan, though it’s not necessary.
Finish the dish: Let the curry sauce come to a simmer and toss in the chicken, cream, and butter. Mix all of this together and let the chicken finish cooking in the curry sauce for another 6 to 8 minutes.
Immediately plate the butter chicken along with some rice to soak up all of the extra curry sauce, enjoy!