Heat the oil in a medium Dutch oven or heavy pot over medium heat. Add half the chopped onions and the garlic and cook until soft, stirring, about 5 minutes. Add the chili powder, paprika, cumin, allspice, coriander, cinnamon, cayenne and cloves. Cook, stirring, until fragrant. Add the beef and cook the mixture, stirring, until the beef is no longer pink, about 5 minutes. Add 1 tablespoon salt.
Add the tomato sauce, diced tomatoes, bay leaf and 1 1/2 cups water; simmer the mixture, uncovered, stirring occasionally, until slightly thicker. Add the chocolate, vinegar and Worcestershire and cook until the mixture is thickened but still soupy, about 15 more minutes.
Discard the bay leaf and season the chili with the freshly ground pepper.
Serve over pasta of choice, and top with cheddar cheese