In a medium saucepot over medium heat, cook the bacon in the olive oil until the meat is nearly done.
Add the butter. When it foams, add the garlic and jalapenos. Stir and allow them to flavor the fats; but only for about 30 seconds. Quickly add in the onion, celery, and carrot, and turn the heat to medium-high. Stir to coat. Cook, stirring only occasionally, about 10 minutes. When the vegetables are nicely caramelized, add the cumin, black pepper, and bay leaf.
Add the vinegar, then the drained beans, ham hocks, and chicken stock and bring to a boil. Skim off any impurities that float to the surface. Reduce the heat to medium-low and cook the beans, uncovered, until they are soft, 1 1/2 to 2 hours. Add more stock or water as necessary. Season with salt and pepper and serve.