Preheat the oven to 190C/170C Fan/Gas 5.
Heat a frying pan over a medium heat. When hot, add 4 tablespoons olive oil and the aubergines. Fry for 2-3 minutes, then set aside on a plate lined with kitchen paper.
In a separate pan, heat the remaining oil. Once hot, add the onion and garlic and fry for a further 2-3 minutes, or until the onions have softened. Add the lamb mince and cook for 4-5 minutes, until browned. Add the tomatoes, cumin, cinnamon, oregano and red wine. Cook for 2-3 minutes, breaking up the tomatoes with a wooden spoon as they cook. Add the mint and stock. Bring to the boil, then reduce the heat and simmer for 15 minutes. Season, to taste, with salt and freshly ground black pepper.
Layer the meat sauce and aubergine in a large baking dish like you would if you were making lasagne.
Place the butter in a pan over a medium heat. When melted, add the flour and cook, stirring well, for a minute. Add the hot milk and cook, stirring constantly, for 2-3 minutes, until the mixture has thickened. Stir in the eggs and nutmeg, season with salt and freshly ground black pepper. Add half of the grated cheddar and mozzarella and continue to cook, stirring, until combined and smooth.
Spoon the cheese sauce over the top of the lamb and aubergine, then sprinkle with the remaining cheddar and mozzarella.
Bake for 20-25 minutes, until the cheese topping is golden-brown and bubbling.
For the courgettes, heat a griddle pan. Toss the strips of courgette in oil to coat and cook for 1-2 minutes or until charred. Place in a bowl and mix with the lemon juice and fresh mint.
Serve the moussaka in slices with the courgettes alongside.