1. Heat oil in a medium saucepan over medium heat until shimmering. Add in the onion and cook, stirring occasionally, until softened but not browned, 5 to 8 minutes. Add in the garlic and stir until fragrant, about 30 seconds. Add the tomato purée, brown sugar, vinegar, tomato paste, salt, mustard, cloves, allspice, and cayenne pepper and stir to combine. Bring to a boil, then reduce heat to low and simmer, stirring occasionally, until thickened to the consistency of ketchup, 45 to 60 minutes.
2. Place ketchup in the jar of a blender and purée until completely smooth.
3. Wash and dry saucepan, then place a fine mesh strainer over top. Pour ketchup in the strainer and, using a spatula, force through all of the ketchup.
4. Taste ketchup and adjust seasonings if necessary. Pour ketchup into a jar, seal, and store in the refrigerator for 3 weeks up to a month.