Make the lamb a day in advance: Make several incisions in the shanks with a paring knife and slide a slice of garlic into each slit. Place the shanks in a large baking dish, drizzle with the lemon juice, turning to coat, and season with salt and pepper on all sides. Mix the parsley, thyme and marjoram in a small bowl, then rub the herbs over the lamb. Cover and set aside at room temperature for 1 hour. After 30 minutes, place a Dutch oven or covered ovenproof pot in the oven and preheat to 500 degrees for at least 30 minutes.
Transfer the shanks to a plate and drizzle with the melted butter; reserve the marinade. Carefully remove the preheated pot from the oven. Working quickly, add the shanks, making sure at least one side of each touches the hot pot. Return the pot to the oven, uncovered, and place the lid on another oven rack to keep it hot. Roast the shanks for 25 minutes.
Meanwhile, bring the reserved marinade and 1/2 cup water to a boil in a small saucepan over medium heat. Pour the hot marinade over the shanks, then place a large sheet of heavy-duty foil over the pot and cover with the hot lid. Reduce the oven temperature to 350 degrees and roast 45 minutes, then reduce the temperature to 200 degrees and cook 30 more minutes. Turn off the oven and leave the lamb inside, undisturbed, to finish cooking, 20 minutes.
Remove the lamb from the cooking liquid and place in a shallow baking dish. Refrigerate the meat and the sauce separately overnight.
When ready to serve, position a rack in the upper third of the oven and preheat to 350 degrees. Drizzle the shallots with olive oil in a small baking dish and season with salt and pepper. Cover the lamb loosely with foil. Bake the lamb and shallots for 25 to 30 minutes, uncovering the lamb and brushing lightly with melted butter after 15 minutes. Meanwhile, discard the fat from the chilled sauce and bring to a simmer over medium heat. Drizzle the finished lamb and shallots with the sauce and garnish with parsley.