Combine all ingredients for the meatballs and shape into small (½-inch) balls. Place on a baking sheet, cover with plastic wrap and refrigerate for at least 1 hour.
Meanwhile, place the chicken breasts in a large stockpot and fill with water until it is covering the chicken by at least one inch. Bring to a boil and cook until the chicken is completely cooked through, about 15 minutes. Turn off the heat and use tongs to remove the chicken to a large plate. Shred the chicken and set aside. Empty water from stockpot.
Melt butter in the now-empty stockpot over medium heat. Add onion, celery, carrot and garlic, and cook until the vegetables are tender, about 10 minutes.
Add the chicken broth and bring to a boil. Reduce heat to low, cover and simmer for approximately 30 minutes. Season to taste with salt and pepper.
Gently add the meatballs to the soup and cook for 7 minutes. Add the pasta and cook for an additional 6 minutes. Add spinach and cook for an additional 3 minutes. Add the shredded chicken. Cover again and allow to simmer for another 30 minutes or so. You can eat as soon as the chicken is re-heated, but allowing it to simmer for a little longer allows all the new flavors to meld together.