Render bacon on medium-high for 6 to 8 minutes. Remove with slotted spoon and set aside.
Drain all but 1 tablespoon bacon fat from the pot, add butter and melt.
Add onion, brown sugar and a pinch of salt and cook for 10 to15 minutes.
Add shallot, garlic and spices and sauté for an additional 3 to 5 minutes. Season with pepper.
Return the bacon to the pot and stir until well combined.
Pour the bourbon/brandy into the bacon mixture and cook the liquid down for about 3 to 4 minutes.
Add the remaining ingredients, reduce the heat to medium-low and simmer for 1 ½ hours, stirring occasionally.
Remove the mixture from the heat and allow to cool for 15 to 20 minutes.
Skim off any fat/grease that has formed at the top and discard.
Pour the mixture into a food processor and process until desired consistency is achieved.
Serve warm or store in an airtight container, in the refrigerator, until ready to use.