Combine first 3 ingredients in a small saucepan; bring to boil. Reduce heat to low, and simmer for 5 minutes or until slightly thickened. Remove from heat, and stir in ginger and allspice; let cool slightly.
Unroll ham, and trim fat. Spread 1/3 cup syrup mixture and garlic over inside surface of ham, and sprinkle with 1 teaspoon salt and 1/2 teaspoon pepper. Reroll ham, and secure at 2-inch intervals with heavy string. Spread 3 tablespoons syrup mixture over ham, and sprinkle with remaining salt and pepper.
Place ham on a broiler pan, and insert meat thermometer into thickest portion of ham. Bake at 350° for 2 hours or until thermometer registers 160°, basting with remaining syrup mixture after 1 hour.
Place ham on a serving platter; cover with aluminum foil, and let stand 15 minutes before slicing.