Cook the bacon in a large Dutch oven over medium heat until crisp, about 5 minutes. Use a slotted spoon to remove the bacon to a paper towel-lined plate. Leave one tablespoon of bacon grease in the pot; drain off the rest.
Add the onion, celery, and carrot to the pot. Cook, stirring regularly, until the onion is translucent, about 6-8 minutes. Add the garlic, rosemary, thyme and basil; cook, stirring constantly, for 1 more minute. Stir in the butter until it melts. Sprinkle flour over all, and continue cooking and stirring for 1 more minute.
Gradually add 4 cups of chicken broth and bring to a boil. Reduce heat to low so that the soup is at a simmer. Stir in the chicken and gnocchi and continue simmering for about 5-10 more minutes, or until the gnocchi is tender. Stir in the half-and-half, spinach and Parmesan. Continue cooking and stirring over low heat just until the spinach wilts and the soup is warmed through. Thin with additional broth, if necessary. Taste and season with salt and pepper.
Ladle into bowls and garnish with reserved bacon and additional fresh herbs, if desired.