Make the pasta. Preheat the oven to 200C/400F/Gas 6. Cook the pasta shells in plenty of lightly salted boiling water until al dente. Drain well (make sure you empty the shells of water) and leave to cool.
To make the filling, mash the ricotta with a fork, stir in the diced mozzarella, parmesan and some salt and pepper to taste and mix well. Shape the mixture into 16 balls, wrap each ball in a basil leaf and place in a cooled pasta shell.
Make the sauce. Heat the olive oil in a large frying pan, add the garlic and sweat until softened. Then add the tomatoes and basil, season with salt and pepper and simmer gently for 25 minutes.
Pour a layer of the tomato sauce over the bottom of an ovenproof dish and place the filled shells on top. Pour over the remaining tomato sauce, sprinkle over the parmesan and top with slices of mozzarella. Cover with aluminium foil and bake for 35 minutes. Remove the foil and bake uncovered for five minutes. Serve immediately.