Preheat the oven to 190oC, gas mark 5 and line a baking tray with baking parchment. Toss the sweet potato with 1 tbsp oil and spread out on the tray. Bake for 20-25 minutes until lightly caramelised and tender.
Meanwhile, add the remaining oil to a medium saucepan and warm over a low-medium heat. Fry the onions, garlic and ginger for 8-10 minutes, or until very soft. Stir in the paprika, turmeric, curry powder, chilli powder, coriander, garam masala and crushed cardamom pods to make a thick paste. Cook for 1-2 minutes, adding a little extra oil if it seems dry.
Add the canned tomatoes and tomato purée and cook for 2-3 minutes until it becomes a paste again. Add the green pepper, green chilli, vegetable stock, fresh tomatoes and salt. Bring to a simmer then reduce the heat to low and cook gently for 35-45 minutes until the sauce has thickened. Add the chickpeas and sweet potato to the curry and warm through.
To make the garam masala ‘yogurt’, mix all the ingredients together and season. Serve with the curry and rice.