In a mixing bowl, combine the ground chicken with half of the grated Parmesan cheese, ½ cup of ricotta cheese, 1 clove of minced garlic, salt, pepper, and ½ tsp Italian seasoning. Mix gently until just combined and form small bite-sized meatballs about 1 inch in diameter. Set aside.
Heat 1 tablespoon of olive oil in a large skillet over medium heat. Add the chicken meatballs in batches, cooking until browned on all sides, about 5-6 minutes. Remove and drain on paper towels.
In the same skillet, add the remaining tablespoon of olive oil. Sauté the chopped onion until translucent, about 3-4 minutes. Add remaining minced garlic and cook for another 30 seconds until fragrant.
Pour in the chicken broth and heavy cream with the onions and garlic. Stir in Italian seasoning, salt, and pepper. Bring to a gentle simmer.
While the sauce simmers, cook the penne pasta in salted boiling water until al dente. Drain and set aside.
Return the browned meatballs to the skillet and simmer in the sauce for 5-7 minutes until fully cooked. Stir in fresh spinach and cook until wilted.
Lower the heat and stir in the remaining ricotta cheese, mozzarella cheese, and Parmesan cheese. Mix until the cheeses melt into a creamy sauce. Fold in the cooked pasta, coating it evenly with the sauce.
Taste and adjust seasoning with salt and pepper if needed. Serve hot, optionally garnished with extra Parmesan or fresh herbs.