Mix yogurt, 4 sprigs of rosemary, 1/2 bunch of parsley, smashed garlic, and zest of 1 1/2 lemons in a large bowl. Place the leg of lamb in the yogurt mixture and stir to coat. Cover and refrigerate for 24 to 48 hours.
The next day, preheat an oven to 400 degrees F (200 degrees C). Spread onions on the bottom of a roasting pan. Remove lamb from the marinade, rinse and pat dry. Set aside.
Place olive oil, salt, pepper, 4 sprigs of rosemary, 1/2 bunch of parsley, 1/2 head of garlic, and zest of 1 1/2 lemons in a food processor. Process until the mixture becomes a smooth paste. Rub leg of lamb with the paste, and place on top of the onions in the roasting pan.
Bake in the preheated oven for 20 minutes, then reduce the temperature to 325 degrees F (165 degrees C). Continue baking until desired doneness, 40 to 50 minutes for medium. An instant-read thermometer inserted into the center should read at least 160 degrees F (70 degrees C).