Preheat the oven to 350°F. Prepare the ham: Place the ham on a flat surface, fat side up. "Stud" the surface with the cloves, leaving space between each. Pour 1/4 cup of the honey over the exterior. Cook the ham: Place the ham in a roasting pan fitted with a rack. Drizzle the onions, garlic and carrots with the canola oil and scatter them on the bottom of the pan and pour wine over vegetables. Place the pan in the center of the oven and cook for 1 hour 45 minutes to 2 hours or until a thermometer inserted into the thickest part of the ham registers 155°F. Cook the bacon and honey: Put the bacon in a medium skillet with 1/4 cup water and cook until the water evaporates, 5-8 minutes. Pour off all but 1 tablespoon of the rendered fat and add the remaining 1/2 cup honey and 2 tablespoons of the red wine vinegar. Simmer over medium heat until the honey thickens, 5-8 minutes. The honey will be very hot. Cool. Finely chop 3/4 cup of the walnuts. Stir the walnuts and mustard into the glaze to thicken the texture. Taste for seasoning. Finish the dish: Pour the glaze on the exterior of the ham spreading to cover the surface of the ham. The glaze should help the nuts adhere to the ham. Transfer the ham and the cooked vegetables to a large serving platter.
Is a bone-in ham better? I like cooking meat on the bone more for better flavor and even cooking but the most important tip of all: buy what you like and make it how you like it!