Make the meat sauce: heat oil in a large sauté pan, then tip in onion and fry for 5 mins until golden. Add carrots and garlic, then fry for 2 mins more. Stir in both meats, breaking up the pork with a wooden spoon. Cook over a high heat until the meat is no longer pink and the juices are released. Pour in wine, scrape the bottom of the pan as you stir, then cook for 1-2 mins until the liquid is reduced. Tip in tomato purée, tomatoes and 2 tbsp water, then stir to break up tomatoes. Add ½ tsp nutmeg and some pepper, cover, then simmer for 1 hr, stirring occasionally. Taste and add salt if you like. Mix in torn basil. Sauce can be chilled for up to 1 day.
While the sauce is simmering, prepare the other layers. Tip the spinach into a large bowl and pour over boiling water. After 30 secs, tip spinach into a colander and put under cold running water briefly to cool. Squeeze to remove excess water. Beat the egg in a bowl, then mix with ricotta, parsley, a pinch of nutmeg and pepper. Soak the lasagne sheets in a single layer in boiling water for 5 mins. (Although the packet says no pre-cook, I find soaking improves the texture.) Drain well. Heat oven to 200C/fan 180C/gas 6.
Start layering. Spread a few big spoonfuls of sauce to barely cover the base of an ovenproof dish (20 x 29 x 6cm deep). Cover with 2 sheets of lasagne, then spread over half the remaining sauce. Cover with 2 more lasagne sheets, then scatter spinach evenly over. Spread the ricotta mixture on top and cover with 2 more lasagne sheets. Spread with remaining sauce, then scatter over mozzarella and Parmesan to almost cover meat. Top with cherry tomatoes and some pepper, then cover loosely with foil.
Bake for 35 mins, then remove foil and bake 5-10 mins more. Leave for a few mins, then scatter with basil and serve with salad.