In a large bowl, combine yogurt, garlic, lemon juice, sugar, garam masala, cumin, onion powder, turmeric powder, ginger powder, cayenne, and kosher salt.
Add chicken, stir to coat well, and cover. Chill for at least 2 hours, up to overnight.
In a large pan, heat the butter over high heat until hot. Add chicken with all the marinade and cook for 4 minutes. At this point, it may not be fully cooked yet.
Add tomato sauce and evaporated milk. Reduce to simmer, and let cook (uncovered) for 20 minutes. Taste and add salt or cayenne as desired.
Garnish as desired, and serve with cooked basmati, jasmine rice, or pita bread.
Notes
You can use heavy cream or coconut milk instead of evaporated milk.
Marinate Ahead: You can marinate the chicken up to 24 hours in advance in the fridge.
Freezing: Freeze the cooked chicken and sauce in a freezer-safe container for up to 3 months. Thaw overnight in the fridge and gently reheat on the stovetop over low heat.
Storage: Store leftovers in an airtight container in the refrigerator for up to 4 days.