Pick through the beans, then rinse and drain them. Put them in a large pot and cover with water by 2 inches. Let soak overnight.
Drain the beans and return them to the pot. Add the chicken stock and 4 cups of water. Bring to a boil and reduce to a simmer.
While the beans are simmering, cook the bacon in a large skillet over medium heat until crisp, 8 to 10 minutes. Remove to a paper towel-lined plate to drain. Add half the bacon to the beans, reserving the rest for garnish.
Remove all but 2 tablespoons of the bacon grease from the skillet and add the carrots, celery and onions. Season with some salt and pepper and cook until the vegetables are just beginning to soften, 3 to 4 minutes. Add the tomato paste and garlic and cook for another minute, stirring to combine.
Using a slotted spoon, add the vegetables to the beans. Add the bay leaves and give it a good stir. Taste to check if it needs any additional seasoning. Simmer until the beans are tender, 1 to 1 1/2 hours.
When ready to serve, stir in the tomatoes. Serve with the reserved bacon and chopped parsley.