1. Rinse and drain navy beans. Cover with water in a large pot, and bring to a boil. Cover, remove from heat, and let stand for 1 1/2 hours.
2. Heat a large Dutch oven over medium-high heat, and add vegetable oil. Add bacon, onion, and garlic. Cook, stirring occasionally, until onions are soft and fat is rendered from bacon, 8 to 10 minutes. (Reduce heat to medium if onion and garlic start to brown.)
3. Raise heat to high, stir in cider vinegar, and let simmer until reduced slightly, about 1 minute. Stir in barbecue sauce, ketchup, light-brown sugar, dijon mustard, smoked paprika, coarse salt, and hot sauce, if desired.
4. Drain beans, and add to onion mixture. Stir in water, and bring to a boil. Cover, and reduce heat to a low simmer. Cook, stirring occasionally, until beans are tender, about 2 1/2 hours.