In a large stockpot over medium heat, melt the coconut oil. Add the cumin, coriander, turmeric, ginger, garam masala, smoked paprika, cinnamon, black pepper, and cayenne. Stir well to mix with the oil, and stir frequently so it doesn’t scorch.
Add the onion and salt, stir well to coat, let cook for 5-10 minutes until the onions have softened slightly. Add the garlic, stir well, and cook for 2-3 more minutes.
Add the canned tomatoes, tomato paste, and coconut milk, stirring well to incorporate. Bring to a simmer and cook for about 5 minutes.
While the sauce is simmering, take about half of the chickpeas and smash them flat with the bottom of a drinking glass. This step is optional, but it changes the shape and texture of the chickpeas (see headnote).
Transfer the sauce to a blender, add the cashew butter and lemon juice, then blend on high until completely smooth. Taste and adjust seasoning as desired (if you’d like it spicier for example, add more cayenne).
Add all of the chickpeas to the sauce and fold to combine. Bring a very light simmer, and let cook for 5 minutes to bring everything together, or up to an hour to let the flavours really develop, making sure to stir every so often so the bottom doesn’t scorch.
Serve the butter chickpeas over rice with lots of fresh cilantro, and naan if desired. Say thank you and enjoy!