Preheat oven to 375 degrees F (190 degrees C). Thoroughly grease a covered baking dish.
Heat a large skillet over medium-high heat. Cook and stir ground lamb in the hot skillet until some of the fat begins to render; add onion, carrots, and garlic. Continue to cook and stir the mixture until the lamb is completely browned and crumbly, 5 to 7 minutes. Stir soup mix into the lamb mixture; remove skillet from heat.
Melt butter in a saucepan over medium heat. Whisk flour into butter, 1 tablespoon at a time, making sure there are no lumps between additions. Pour milk into the butter mixture while whisking; continue to whisk until the milk thickens and the mixture is smooth.
Switch heat below saucepan to ‘off.’ Stir Cheddar cheese and Havarti cheese into the milk mixture until the cheese is melted and the sauce is smooth.
Spoon a small amount of the cheese sauce into the beaten egg in a bowl; whisk together to temper the egg. Pour the tempered egg into the cheese sauce and stir.
Arrange sliced potatoes in the bottom of the prepared baking dish, overlapping to make a layer about 1/2-inch deep; season with salt and pepper. Pour about 1/3 of the cheese sauce over the potatoes and spread into an even layer. Spread the lamb mixture evenly atop the cheese sauce layer. Layer remaining potatoes atop the lamb; season again with salt and pepper. Pour remaining cheese over the top. Cover baking dish.
Bake in preheated oven until the potatoes are tender, about 90 minutes. Remove cover and continue baking until the top browns, about 30 minutes more.