Boil pasta (in salted water) until al dente. Reserve 1 cup of pasta water. Drain and set aside.
While the pasta is cooking start the filling and pasta sauce. In a large skillet over medium heat add 2 tablespoons of olive oil. Add in the spinach and sauté until wilted, about 2 minutes. Next add in the minced garlic (the 3 cloves for the filling) and red pepper flakes. Sauté for 30 seconds and remove from the pan. Place on a cutting board and roughly chop. Add to a medium sized bowl.
Into the bowl with the spinach, combine all of the romano cheese, ¾ cup of the parmesan cheese, 1 cup of the mozzarella cheese and all of the ricotta cheese. Next mix in 2 tablespoons of parsley, pepper, egg and heavy cream. Mix until well combined.
In the same pan that you cooked the spinach in add 2 tablespoons of olive oil. Add in the italian sausage and onions. Cook, crumbling up the meat as it cooks, until the meat is browned and cooked through. Add in the garlic and sauté for 30 seconds.
Next pour in the tomato sauce, diced tomatoes and ¾ cup of reserved pasta water. Add in all of the seasonings (basil, oregano, pepper, salt). Bring to a simmer, stirring occasionally, for 20-30 minutes. If the sauce is too thick add in the remaining reserved pasta water.
Preheat the oven to 375° F. Spread ½ of the pasta sauce on the bottom of a 9x13 dish, or large oven safe skillet. Stuff the shells with the cheese mixture and place in the baking dish. Top with the remaining pasta sauce, spreading evenly. Sprinkle over the remaining mozzarella and parmesan cheese.
Place in a 375° F oven for 45 minutes. If you want the top to be browned, bump up the heat a little and continue baking for a few more minutes until lightly browned. Garnish with parsley and serve. Enjoy!
