Place pink beans into a large container and cover with several inches of cool water; let stand 8 hours to overnight. Drain.
Place drained beans in a stockpot with enough cold water to cover. Bring to a simmer and cook until almost completely tender, about 1 hour 45 minutes.
While beans are simmering, cook and stir bacon in a large saucepan over medium heat until cooked through but not crispy, 5 to 7 minutes. Add ham; cook and stir until ham is heated through, about 1 minute. Stir garlic into ham mixture and cook until garlic is fragrant, about 1 minute more. Add tomatoes, 1/2 cup water, ketchup, sugar, dry mustard, paprika, chili powder, salt, chipotle chile powder, and oregano. Bring to a simmer, reduce heat to low, and cook until flavors blend, about 30 minutes.
Drain beans, reserving 1 cup of the cooking liquid. Combine beans, reserved liquid, and tomato mixture in the beans stockpot; bring to a simmer, reduce heat to low, and cook, stirring occasionally, until beans are tender and mixture has thickened, about 30 minutes.