Preheat the oven to 350°F. Remove the loose outer layers of skin from each onion, leaving a single thin layer intact. Cut the onions in half and trim the roots off. Repeat with the shallots, trimming the roots but not cutting them in half. Place them cut side down in a baking dish so that the onions and shallots are in a single layer but touching.
Peel the black garlic. Disperse the cloves, whole, over the onions and shallots. Drizzle with olive oil, then place in the oven and roast for 1.5 to 2 hours.
In a large bowl, combine the ground elk meat, finely chopped shallot, hoisin sauce, whole grain mustard, egg, panko or plain bread crumbs, marjoram, summer savory, and salt and pepper until thoroughly mixed. Roll the mixture into inch-round balls.
Heat the butter and olive oil in a large skillet over medium-high heat. Working in batches, sear the meatballs on all sides but do not cook all the way through. The outsides should be golden brown but almost uncooked in the center. Set the seared meatballs aside.
Pour the sherry or white wine into the skillet to deglaze, scraping up the brown bits. Let the liquid reduce by half, then add the beef broth. Bring to a simmer, then gradually stir in the flour, 1-2 tablespoons at a time, until the broth has visibly thickened. Adjust thickness by adding more broth if too thick or more flour if too thin. Then, stir in the heavy cream as necessary to achieve a creamy gravy consistency.
Once the onions and shallots are roasted and soft to the touch of a fork, with skins that can be easily removed, discard the skins.
Place the seared meatballs in the same dish as the roasted onions and shallots. Pour the gravy over the meatballs. Return to the oven and continue to cook for another 25-30 minutes, until the meatballs reach an internal temperature of 130°F-140°F.
Let the meatballs rest for 5 minutes before serving to allow the gravy to set. Serve on a large platter with crusty bread for enjoyment.