Heat your oven to 180°C/Fan 160°C/Gas 4. Halve the tomatoes across their middles. Put them cut side up on a baking tray lined with baking paper. Drizzle over ½ tbsp oil. Roast in the oven for 25 mins.
Meanwhile, peel and finely slice the onions and 1 garlic clove. Finely shred the spinach, removing any thick, tough stalks. Crush the cardamom pods in a pestle and mortar. Pick out the papery skins. Grind the black seeds as finely as possible.
Peel and grate the ginger and the remaining garlic clove. Finely chop the chilli, flicking out most of the seeds. Chuck the ginger, garlic and chilli in a small bowl. Tip in 1 tbsp Demerara sugar and ½ tsp salt. Mix well.
Take the tomatoes out of the oven. Dot and spread the sugary ginger mix on the cut side of each tomato. Return to the oven and roast for 25 mins till caramelised. Once cooked, set aside to cool slightly.
While the tomatoes are roasting, warm 1 tbsp oil in a large pan over a low heat. Gently sweat the onions and garlic till softened. Pour in the bulgar wheat and half the crushed cardamom seeds. Stir and toast for 1 min.
Pour in 200 ml boiling water. Leave to bubble for about 5 mins, uncovered, till all the water has absorbed. Stir regularly. Add the shredded spinach. Stir through the bulgar. Cover the pan and take off the heat. Set aside for 10 mins to finish cooking.
Zest and juice the lime. Stir both through the yogurt with the remaining crushed cardamom seeds, a pinch of salt and plenty of black pepper. Taste the bulgar and season. Serve with the slightly cooled roasted tomatoes and lime cardamom yogurt.