Rub the pork loin with garlic, salt, pepper and olive oil and let it marinate for several hours or overnight. Cut the pork into small, bite-sized pieces.
Dice the onion, celery and garlic and carrot into small pieces. In a large pot, saute the onion, carrot, and celery in olive oil until translucent, then add the garlic and cook together until lightly golden. Add the pork stir for a minute or two until the pork is no longer pink. Add the wine and allow it to mostly evaporate. After a couple of minutes, puree the tomatoes and add to the vegetables, and salt and pepper to taste. Reduce the heat to low and cook for 1 hour, stirring regularly, or until thickened.
Prepare the ricotta mixture:
In a large bowl, mix eggs into the ricotta. Add the Parmigiano-Reggiano, ½ teaspoon each of salt and pepper, and ¾ of the mozzarella.
Assemble the lasagna:
In plenty of salted water, cook the lasagna for half of the suggested package cooking time, drain and set aside. Coat the bottom of a bake-proof pan (9 x 11 or other similar size at least 3″ deep) with a little olive oil, and then cover with 3/4 cup of sauce. Then start layering: a layer of lasagna (slightly overlapping), a layer of the ricotta mixture, and 3/4 cup of sauce. Repeat layers until you reach the top of the pan. (Depending on the depth and size of the pan, you may have left over lasagna, or you can make more layers with slightly less filling between layers.) Cover top with a layer of lasagna, and 3/4 cup of the sauce, the remaining mozzarella and a generous sprinkle of Parmigiano. Cover with aluminum foil and cook at 350° F for about 30 minutes. Remove foil and cook for another 10-15 minutes until top is browned. Remove from oven and let rest for 10 minutes before serving.