Preheat oven to 350°.
Remove white papery skin from garlic heads (do not peel or separate the cloves). Place garlic heads in a 1-quart baking dish; add 1/2 cup broth. Cover and bake at 350° for 1 hour. Cool 10 minutes; remove garlic heads, reserving cooking liquid. Separate cloves; squeeze to extract garlic pulp, and discard skins. Place reserved cooking liquid, garlic pulp, 1 1/2 cups broth, 1 teaspoon marjoram, and 1/2 teaspoon salt in a food processor; process until smooth. Set garlic sauce aside.
Combine 3 teaspoons marjoram, 1/2 teaspoon salt, 8 garlic cloves, and shallots in a food processor; process to a coarse paste. Trim fat from roast; make 3/4-inch-deep slits into roast. Spoon 1/4 teaspoon marjoram paste into each slit; rub roast with remaining paste. Sprinkle roast with pepper. Cover and chill 1 hour.
Preheat oven to 325°.
Place roast on a broiler pan; insert meat thermometer into thickest portion of roast. Bake at 325° for 2 hours or until thermometer registers 145° (medium-rare) or desired degree of doneness. Place roast on a platter; cover with foil. Let stand 15 minutes. Set pan and drippings aside.
Add brandy and 1/2 cup garlic sauce to broiler pan, scraping the pan to loosen browned bits. Combine brandy mixture and remaining garlic sauce in a saucepan; bring to a boil. Cut roast across grain into very thin slices; serve with garlic sauce.
Note: Omit brandy, if desired