Add all meatball ingredients except olive oil to a large mixing bowl. Gently mix until fully combined. Shape into small meatballs, about 1 inch in diameter.
Heat 2 Tablespoons olive oil in large dutch oven over medium high heat. Add about half the meatballs and cook about 3 minutes per side, turning to brown all over. Transfer to plate. Repeat with remaining meatballs.
Add remaining 1 Tablespoon olive oil to the same dutch oven and reduce heat to medium low. Add the onion, carrots and celery and cook 5 minutes, until softened. Add garlic and cook 30 seconds, or until fragrant. Season with salt, pepper, and dill.
Add wine and deglaze the pan, scraping the bottom of the pot with a wooden spoon to loosen any browned bits. Add the chicken broth and bring to a boil.
Add pasta and meatballs to the pot and cook 8-10 minutes, until pasta is tender and meatballs are cooked through. During the last minute of cooking, add spinach and let it wilt.
Serve hot, sprinkled with shredded Parmesan cheese.
