Cut each of the chicken breasts into three large pieces and place in to a large non-metallic bowl. Stir in the lemon juice, add the salt, cover with cling film, refrigerate and leave for 30 minutes.
Stir the remaining ingredients into the chicken. Cover with cling film and chill in the fridge overnight.
To make the sauce, heat the butter in a frying pan over a low heat and add the onions and cook for five minutes and then add the garlic and cook for a further five minutes over a low heat or until golden.
Dry fry the spices in a small frying pan over a medium heat for one minute. Grind the cardamom seeds, cinnamon stick and cloves to a smooth powder using a pestle & mortar or spice grinder.
Stir in the ginger and spices with the tomatoes and tomato puree plus 200ml water. Bring to a simmer and cook for 30 minutes.
Pre-heat the grill to its highest setting.
Line a grill pan with foil and add the chicken. Grill the chicken for 10-15 minutes or until the chicken is cooked through and starting to char on the sides.
Meanwhile, put the sauce into a food processor and pulse until smooth. Add to a medium deep sided pan with the chillies, cream and paprika. Bring to a simmer and then add the chicken, fenugreek and garam masala and cook for a further five minutes or until the chicken is piping hot and the sauce starts to separate.
Garnish with lemon juice and chopped coriander and serve with basmati rice.