In a small sauté pan over medium-high heat, heat oil and sauté onions for 3 to 4 minutes. Add garlic and cook for 2 minutes more. Let cool slightly.
In a medium bowl, combine onions and garlic with ground beef, parsley, bread crumbs, egg, salt, and pepper. Form into meatballs 1/2 - inch in diameter. Place in freezer for 15 minutes.
While meatballs are chilling, cook pasta according to package instructions.
In a large pot, bring broth to a boil and gently lower meatballs, one at a time into the broth. Reduce heat to simmer and cook, uncovered, for 20 minutes, adding spinach for the last few minutes.
Add pasta. Taste and adjust salt and pepper, if needed.