If using dried black-eyed peas, put them in a large pot and cover with about 4 inches of water. Soak the peas overnight, then drain the water and rinse. Alternatively, you can "quick-soak" the peas by bringing them and the water to a boil for 2 minutes. After this, remove them from the heat, cover the pot and soak the peas for 1 hour. Then, drain and rinse the peas.
Heat the oil in a large pot over medium-high heat. When the oil is shimmering, add the pork. Sear until the pork is browned on all sides, 4 to 5 minutes. Add the bacon, onion and garlic to the pot and cook, stirring, until the onion and garlic are lightly browned, about 6 to 8 minutes. Add the salt, black pepper, cayenne and garlic powder. Cook until the entire mixture is coated with the spices, about 2 minutes. Pour in the stock and water and drop in the bay leaves. Bring the mixture to a boil, then reduce the heat and simmer, covered, for about 30 minutes.
When the pork begins to fall apart, add the prepared peas to the pot and simmer until the peas are very soft, about 1 to 1 1/2 hours (see Cook's Note).
Taste for seasonings, and add some hot-pepper vinegar, if desired. Discard the bay leaves and transfer the black-eyed peas to a serving bowl.
Using the back of a spoon, smash some of the peas against the inside of the pot then stir them into the mixture. This will break up some of the peas and give them a creamier consistency. Alternatively, you can puree 1 cup of the peas and broth in a blender or a food processor, then return the puree to the pot.