Quarter the tomatoes and purée them in a blender in batches, along with the chopped onions and red bell pepper. For a smoother texture, press the purée through a coarse sieve or food mill to remove skins and seeds.
Pour the strained purée into a large, heavy-bottomed pot or enameled kettle.
Bring the mixture to a gentle simmer over low heat.
Cook, stirring often to prevent scorching, until the volume has reduced and the mixture has thickened considerably. This can take up to 1 hour.
While the tomatoes cook, create your spice infusion.
Place the allspice, cloves, cinnamon sticks, and celery seeds into a small piece of cheesecloth and tie it into a bundle.
In a small saucepan, combine the cheesecloth bundle with 1 cup (240 ml) of cider vinegar. Gently heat for about 30 minutes to infuse the vinegar with the spice flavors, then remove and discard the spice bag.
Add about half of the spiced vinegar to the thickened tomato mixture.
Stir well and taste. If you prefer a more robust, spicy flavor, add more of the spiced vinegar. If it's spicy enough, you can add 2 to 3 tablespoons (45 ml / 1.5 fl oz) of plain cider vinegar for extra tang. Now, stir in the dry mustard, cayenne pepper, brown sugar, honey, and salt.
Seasoning is all about your personal taste!
Continue to simmer the ketchup, stirring frequently, until it reaches your desired consistency. This final thickening could take another hour. Remember, it will thicken more as it cools.
Taste one last time and adjust any seasonings if needed.
Carefully pour the hot ketchup into hot, sterilized jars, leaving at least ½ inch of headspace at the top. Seal the jars. This recipe makes approximately 3 to 4 pints, depending on the final thickness.
Don't rush the simmering process. A long, slow reduction is crucial for developing a deep, concentrated tomato flavor and achieving that classic ketchup consistency.