Heat 2 tablespoons oil in a stockpot or Dutch oven on medium-high heat. Add 1 large yellow or white onion (sliced) and ¼ teaspoon baking soda. Fry until the onions are soft and falling apart, 5–10 minutes.
Add 2 inches fresh ginger root and 1 head garlic and continue to sauté until the onions are very brown and caramelized.
Pour in the 1 tablespoon dried fenugreek leaves, 1 ½ tablespoon garam masala, ½ tablespoon salt, 1 teaspoon cayenne pepper, 1 ounce cashews, and 1 28-ounce can whole tomatoes.
Pour in ½ cup water. Give everything a good stir and make sure to scrape up any bits of onion that are stuck to the bottom of the pot. Cover and heat until bubbling, then turn the heat down to medium-low. Simmer, covered, for 30 minutes.
Meanwhile, remove the chicken from its marinade and pat dry. Heat 1 tablespoon oil in a skillet until hot, then add chicken pieces in a single layer. (You might have to cook in batches.) Sear and flip the chicken until both sides are golden brown, then set aside.
When 30 minutes of simmering are up, use an immersion blender to purée the contents of the stockpot into a thick, luscious sauce. Or transfer to a stand blender and blend until smooth.
Stir in 3 tablespoons butter and ½ cup heavy cream and stir until the butter fully melts. Add cooked chicken to the sauce and serve with garlic naan.