Preheat the oven to 180C/350F/Gas 4.
Melt the butter in a large, heavy-based lidded casserole dish. Add the garam masala and allow to sizzle gently for a moment or two. Tip in the rice and stir around until the grains are well coated with this spicy butter.
Add the bay leaf, lemon zest, green chilli, ginger and a touch of salt and freshly ground black pepper. Pour over the stock, bring up to a simmer, then lay the fish on top, gently submerging it under the surface. Put on the lid and cook in the oven for 15-20 minutes.
Remove from the oven, then leave to stand for 5-7 minutes without removing the lid; this is important - it allows the rice to finish cooking.
Take off the lid, remove the skin from the fish and immediately add the chopped egg, onions and coriander and, using two forks, gently mix the rice, while also breaking the fish into flakes and mixing everything else in as you go. Remove the bay leaf and cover with a tea towel, clamp on the lid, and leave for a further five minutes to remove any excess steam. Mix again lightly.
Serve directly from the dish onto hot plates and squeeze over a little lemon juice.
Use one and a half times the amount of liquid to the weight of the rice for the perfect pilaf. Test the strength of the chillies by rubbing your finger along them and tasting. If you like your food hot, you could add the seeds from one or two of the chopped chillies to add kick, depending on their strength and your taste.