Cut chicken fillets into strips and coat with all marinate ingredients, cover and refrigerate overnight.
Make the sauce
Sauté onion in the oil until lightly golden and then allow to cool.
In a blender, cream the cachews with some of the water you soaked them in. Add the tomatoes and onions and blend until smooth.
Melt ghee in a pan and add ginger garlic paste and geen chillies. Fry on a low heat, for a minute or two, until it turns fragnant but not burnt.
Turn off the heat and stir in red chilli powder, garam masala, cumin and coriander powder.
Stir in the tomato cashew puree. If it is not smooth, strain it to the pan. Add the tomato puree.
Mix well and cover partially. Bring it to a simmer on a medium high heat, reduce the heat to low or medium. Cook until the puree turns thick, keep stirring occasionally.
Pour in some hot water and simmer for 10 mins, until the sauce thickens & traces of fats are visible on top of the sauce.
Grill your chicken in a hot pan in small batches using ghee. Cook until browned and the marinate has dried up. (This works well on a grill)
Add chicken to the tomato gravy. Add more hot water if the sauce is too thick. Cover and simmer for about 5 to 7 minutes till it becomes tender.
Stir in salt, sugar, stock cube and fenugreek leaves. Taste test and optionally add more garam masala.
Stir in the butter for additional flavour, then turn off the heat and add the heavy cream.
Hollow out your cob bread or white loaf and fill with the butter chicken curry as demonstrated.
Garnish with fresh coriander and serve with sambal on the side