Rub chicken with olive oil, season with salt and pepper, and roast at 425°F (220°C) for about 25 minutes until internal temperature reaches 165°F (74°C). Rest 5 minutes, shred with two forks, and set aside. Skip this step if using rotisserie chicken.
Chop bacon into small pieces and add to a cold Dutch oven set over medium heat. Cook, stirring occasionally, until crisp and fat is rendered, about 8 to 10 minutes. Remove bacon with a slotted spoon and drain on paper towels, leaving the fat in the pot.
Add butter to the bacon fat and melt over medium heat. Stir in onion, carrots, and celery; cook 6 to 7 minutes until softened and onion is translucent. Add garlic and cook 1 more minute until fragrant.
Sprinkle flour evenly over the vegetables and stir constantly for about 1 minute to cook off the raw flour taste and coat everything in a light paste.
Pour in chicken broth about 1 cup at a time, stirring after each addition to break up any flour clumps. Add cubed potatoes, dried thyme, smoked paprika, and bay leaves. Season with a pinch of salt and pepper and stir to combine.
Bring soup to a gentle boil, then reduce heat to low and cover. Simmer 18 to 22 minutes, stirring occasionally, until potatoes are fork-tender. For a thicker broth, press a few potato cubes against the side of the pot and stir the released starch back in.
Remove pot from heat and discard bay leaves. Stir in shredded chicken, then pour in heavy cream while stirring. Add shredded cheddar a handful at a time, stirring until each addition melts before adding the next.
Return pot to low heat for 2 to 3 minutes to warm through, but do not let it boil. Taste and adjust salt and pepper. Ladle into bowls and top with crumbled bacon, sliced green onions, and a spoonful of sour cream if desired.