Put ham into a large deep nonreactive stockpot or tub, cover with cold water, and let soak in a cool spot for 3-4 days, changing water daily.
Preheat oven to 350°. Drain ham, then rinse under warm running water, scrubbing ham all over with a stiff kitchen brush. Pat ham dry. Using a sharp knife, lightly score skin and fat in a crosshatch pattern, making sure not to cut into meat. Put ham skin side up into a large sturdy roasting pan. Mix sugar, mustard, and 1⁄4 cup water together in a small bowl, then spread evenly over ham. Stuff ham with cloves, inserting one at each intersection of the crosshatching. Add enough water to roasting pan to just cover bottom of pan. Tent foil over ham and bake for 15 minutes per pound or until internal temperature of meat registers 155°, 4-5 hours, replenishing water in pan as necessary. Remove foil from ham and bake for 10 minutes more to allow top of ham to brown.
Remove ham from oven and set aside to let rest for 15 minutes. Thinly slice ham and serve warm, or let ham cool completely, cover, and refrigerate. Ham can be served cold and thinly sliced with biscuits.