01 - Preheat your oven to 375°F (190°C). Line a baking sheet with parchment paper.
02 - In a large bowl, combine ground beef, ground pork, finely chopped onion, minced garlic, grated carrot, finely chopped celery, breadcrumbs, eggs, milk, ketchup, Worcestershire sauce, Dijon mustard, dried thyme, salt, and black pepper. Mix gently until just combined.
03 - Shape the meat mixture into a compact loaf, approximately 8 x 4 inches. Place on a plate and chill for 15 minutes to firm up.
04 - On a lightly floured surface, roll out the puff pastry into a rectangle large enough to fully encase the meatloaf, approximately 12 x 10 inches.
05 - Lay the prosciutto or ham slices (if using) on the puff pastry, overlapping slightly. Place the chilled meatloaf on top of the prosciutto.
06 - Wrap the puff pastry around the meatloaf, sealing the edges and tucking under any excess. Place the seam-side down on the prepared baking sheet.
07 - Brush the pastry with the beaten egg. If desired, decorate with pastry scraps.
08 - Bake for 55–65 minutes, or until the pastry is golden brown and an instant-read thermometer inserted into the center of the loaf registers at least 160°F (71°C).
09 - While the Wellington bakes, prepare the gravy: In a saucepan, melt butter over medium heat. Add flour and whisk for 1–2 minutes until lightly golden. Gradually whisk in beef broth, Worcestershire sauce, and Dijon mustard. Simmer, whisking, until thickened, about 5–7 minutes. Season with salt and pepper to taste.
10 - Let the Wellington rest for 10 minutes before slicing. Serve with warm gravy.