In a large mixing bowl whisk together all the marinade ingredients beside the chicken. Mix in the chicken until fully coated, then tightly cover and rest in the fridge for 3-24 hours (aim for the latter if you can). Take out the fridge 30 minutes before needed.
Heat the oil in a large pan over medium-high heat. Use tongs to pluck out half of the chicken and space it out in the pan. Leave to fry until it begins to char, then flip the pieces and continue frying until charred on the other side and cooked through the centre (around 3 mins on each side depending on size). Remove and store in a bowl to one side and repeat with the second batch, adding more oil as needed. Keep the leftover marinade in the bowl!
Turn the heat down slightly and melt in 1 tbsp of the butter. Add the onion and fry until soft and golden, then add in the garlic, ginger, garam masala, chilli powder, ground coriander, ground cumin and ground fenugreek. Fry for a minute, then pour in the passata. Swill out the carton/jar with 2/3 cup water and add that in too. Use a spatula to scrape in all of the leftover marinade then finally add in the cashews.
Bring to a gentle simmer and allow to bubble away for 15 minutes until the sauce thickens and the cashews soften. Carefully transfer it to a blender and pulse until smooth, adding a dash of water to loosen it up if needed.
Pour back into the pan and stir in the cream, sugar and salt. Bring to a very gentle bubble and stir through the rest of the butter, then stir in the cooked chicken alongside all of the resting juices. Gently simmer for around 10 minutes to heat the chicken back through and allow its flavours to seep into the sauce.
Check for seasoning and adjust if needed (don't skimp on the salt), then serve up with rice, naan and fresh coriander/cilantro if desired!