Heat oil in a large Dutch oven over medium heat. Add onion and celery; cook, stirring occasionally, until softened, about 5 minutes. Stir in garlic and thyme; cook, stirring often, until fragrant, about 1 minute. Stir in broth, carrots, pepper, salt and chicken; bring to a boil over medium-high heat. Reduce heat to medium to maintain a simmer; cook, flipping the chicken occasionally, until an instant-read thermometer inserted into the thickest part of the chicken registers 165°F, 15 to 20 minutes. Transfer the chicken to a plate.
Stir gnocchi into the simmering soup; cook, stirring occasionally, until tender, about 5 minutes. Meanwhile, using 2 forks, shred the chicken into bite-size pieces. Return the shredded chicken to the pot. Add spinach; stir until the spinach is wilted, about 1 minute.
Whisk half-and-half and cornstarch together in a liquid measuring cup. Drizzle the mixture into the soup; cook, stirring constantly, until slightly thickened, about 2 minutes.
