First make the béchamel sauce. Pour the milk into a saucepan, add the carrots, shallot, bay leaf, clove, parsley and peppercorns, and bring to the boil. Remove the pan from the heat, cover and leave the mixture to infuse for 30-40 minutes.
Meanwhile, make the tomato sauce. Heat the olive oil in a large saucepan over a medium heat, add the onions and fry for 6-8 minutes until they are softened but not browned.
Add the garlic to the pan and cook for a further 1-2 minutes. Add the tomatoes and oregano and bring to the boil then simmer, uncovered, for 45 minutes, stirring frequently, or until it has reduced by about one-third. Season to taste.
Meanwhile, steam the aubergines in single-layer batches, for 4-5 minutes each batch, until they have softened. Then set them aside.
While the aubergines are steaming, bring a large saucepan of water to the boil. Cook the lasagne, a few sheets at a time, for 8 minutes, or until softened. Rinse them under cold water, drain well and set aside.
To complete the béchamel sauce, strain the infused milk and discard the flavourings. Melt the fat spread in a saucepan, stir in the flour and cook for 1 minute. Then slowly whisk in the milk and bring to the boil, whisking continuously until the sauce is thick enough to thinly coat the back of a spoon. Let it simmer for 3 minutes then add salt, pepper and freshly grated nutmeg to taste.
Meanwhile, heat the oven to 180°C (350°F, gas mark 4). Lightly grease a 25 × 20 × 5 cm (10 × 8 × 2 in) ovenproof dish with oil.
Place three sheets of pasta in the bottom of the dish, pour half the tomato sauce over them and sprinkle it with half the basil. Arrange half the aubergines in a single layer on top and spoon a third of the béchamel sauce over them. Repeat the layers and top with a layer of lasagne. Pour the remaining béchamel over the top and sprinkle with the Parmesan cheese.
Bake the lasagne for 35-40 minutes until it is golden brown and bubbling hot. Serve straight from the dish.
Variation: to prepare the lasagne in advance, assemble it in the dish, then cover it loosely with foil and refrigerate until ready to cook it.
Parmesan cheese is not truly vegetarian, as it contains animal rennet. To make this dish 100% vegetarian, omit the cheese or find a suitable vegetarian substitute made without animal rennet. In supermarkets look for the 'parmesan style hard cheeses' which are suitable for vegetarians.
Steaming the aubergines for this dish avoids having to cook them in a large amount of oil, which they soak up like a sponge.