Heat the olive oil in a large pot or Dutch oven over medium heat. Add the diced onion and sauté for about 3–4 minutes, until translucent.
Add the garlic and red bell pepper to the pot, cooking for another 2 minutes until fragrant.
Push the vegetable mixture to the side of the pot and add the sausage. Break it up with a spatula and cook until browned and no longer pink, about 5–7 minutes.
Stir in the penne pasta, diced tomatoes (with juices), chicken broth, Italian seasoning, salt, and pepper. Bring to a boil.
Once boiling, reduce heat to low, cover, and simmer for 12–15 minutes or until pasta is al dente and most of the liquid is absorbed, stirring occasionally to prevent sticking.
Once the pasta is cooked, remove the pot from heat and gently fold in the fresh spinach and mozzarella cheese until well mixed.
Let it sit for a few minutes to allow the cheese to melt and the spinach to wilt.
Sprinkle the grated Parmesan cheese on top before serving for extra flavor.
Notes
Let the dish sit for a few minutes to enhance flavors.