Dice the onion, carrots, and celery into even 1/4-inch pieces and mince the garlic. Pat the chicken dry, measure out the flour, seasonings, salt, pepper, and broth, and grate the Parmesan.
Heat the butter and olive oil in a Dutch oven over medium heat. Sauté the onion, carrots, and celery for 5 to 6 minutes until soft, then add the garlic and stir for 1 minute until fragrant.
Sprinkle the flour, Italian seasoning, and thyme over the vegetables and stir constantly for 1 to 2 minutes to cook off the raw flour taste.
Pour in 1 cup of broth, scraping up any stuck bits, then stir in the remaining 5 cups. Add the salt and pepper, raise the heat to medium-high, and bring to a gentle boil, stirring occasionally.
Reduce the heat to medium-low, add the chicken breasts, and partially cover. Simmer for 18 to 22 minutes, turning once, until the thickest part reaches 165°F.
Move the chicken to a cutting board and rest for 3 to 5 minutes, then shred into bite-sized pieces with two forks or meat claws.
Turn the heat to low and slowly stir in the heavy cream, then add the Parmesan a handful at a time until melted. Warm gently for 3 to 4 minutes without boiling, then return the shredded chicken to the pot.
Add the spinach a handful at a time, stirring until wilted, about 2 to 3 minutes. Stir in the lemon juice to brighten the broth.
Taste and adjust the salt and pepper, thinning with a splash of warm broth if needed. Ladle into warm bowls and top with extra Parmesan and cracked black pepper.