Heat your oven to 180°C/Fan 160°C/Gas 4. Tip the rice in a pan with 300ml boiling water. Cover and boil for 5 mins. Drain well. Pop into a bowl and set aside.
Peel and finely chop the onion. Peel and crush the garlic. Peel and grate the ginger. Halve the chilli and finely chop it – flick out the seeds if you like a milder curry. Roughly chop half the tomatoes.
Warm 1 tbsp oil in a deep frying pan or wok over a high heat. Fry the lamb for 5 mins. Stir till it’s browned all over. Set aside on a plate.
Add the onion to the wok with more oil if it needs it. Fry for 3 mins. Keep stirring till it starts to soften. Add the garlic, ginger, chilli and 2 tsp garam masla. Fry for 1 min till it smells fragrant and spicy.
Pop the lamb back in the wok. Add the chopped tomatoes and spinach. Stir till the spinach wilts. Take off the heat.
Scatter a third of the lamb mix over the base of a medium casserole dish. Top with a third of the rice and season. Repeat twice more till you’ve used everything up and have finished with a layer of rice.
Level the surface of the rice with the back of a spoon. Pour over 150 ml boiling water. Cover and bake in the oven for 20 mins. Take off the lid. Bake for 5 more mins.
Slice the remaining tomatoes and the red onion. Arrange on a serving plate. Chop the coriander and scatter half over the tomatoes. Season and dress with ½ tbsp oil. Stir the rest of the coriander into the biryani. Serve with the tomato salad.