Place ham in a large container; cover with cold water, and soak overnight. Remove ham from water, and drain. Discard water.
Scrub ham thoroughly with a stiff brush, and rinse well with cold water. Place ham in large container; cover with cold water. Bring to a boil; reduce heat, and simmer 4 to 4 1/2 hours, allowing 20 minutes per pound. Turn ham occasionally during cooking time. Set aside to cool. Carefully remove ham from water, and trim all fat. Discard water.
Slit ham lengthwise on side closest to bone, using a sharp boning knife. Place cutting edge of knife toward bone, guiding knife along the length of the bone, continuing around entire bone. Give ham a half turn; insert knife into other end of ham. Repeat procedure. Remove and discard bone from ham.
Combine chopped parsley, watercress, onion, thyme, marjoram, mustard, pepper, and mace. Fill cavity created by bone removal with stuffing mixture. Secure ham around stuffing with wooden picks. Place stuffed ham, cavity-side down, in a shallow roasting pan.
Combine egg yolks, brandy, and nutmeg; mix well. Coat surface of ham with egg mixture; sprinkle with breadcrumbs.
Bake, uncovered, at 350° for 1 hour or until breadcrumbs are lightly browned. Cool to room temperature. Refrigerate until thoroughly chilled.
Transfer ham to a serving platter. Cut into thin slices to serve.
Note: Leftover ham may be refrigerated for later use.