Set your oven rack to the lower third of the oven, preheat oven to 350 F.
Place a roasting rack in a large roasting pan, along with about 1 cup of water – you just need enough water to prevent the pan drippings from burning.
Place the ham flat side down - fat side up - on a work surface. I like to do this on a large cutting board for easy access, but you can do it right in the roasting pan, if you prefer.
Use a sharp knife to carefully slice ½″ deep cuts across surface of the ham, spaced about 1 ½″ apart.
Cut another series of ½″ deep cuts crosswise to the first set of cuts, creating a diamond pattern all over the top surface of the ham.
If you like, push a whole clove into each spot where the diamond shapes intersect – I usually don’t bother, though.
Place ham in the prepared roasting pan, cover with aluminum foil. Follow the directions on the ham to bake ham – The cooking process usually takes about 15 minutes per pound. Set your timer for 40 minutes less than the amount of time it recommends.
About 20 minutes before the timer goes off, prepare the glaze:
Heat oil in a medium saucepan over medium heat. Cook onion and garlic in heated olive oil, until onion starts to go translucent.
Add remaining ingredients, whisking until smooth. Bring this brown sugar mixture to a boil, reduce burner to medium-low heat, and keep at a low simmer for 5-10 minutes.
When the timer goes off, season the sauce with salt and pepper, to taste.Spoon half of the glaze evenly over the top of the hot ham, return to the oven for 20 minutes. At the 20 minute mark, spoon remaining glaze over the outside of the ham. Continue cooking for 20 more minutes, or until the internal temperature reaches 140F when measured with a meat thermometer inserted into the thickest part of the ham
Remove ham from oven, allow to sit for a few minutes before slicing and serving.