Make the stuffed shells: Bring a large pot of salted water to a boil. Add the pasta shells and cook until just slightly softened but still firm, about 7 minutes. Drain and rinse under cold water. Drizzle with olive oil and toss; set aside.
Heat the olive oil in a large nonstick skillet over medium-high heat. Add the onion and cook, stirring occasionally, until soft, about 4 minutes. Add the garlic and cook, stirring, 30 seconds. Add the sausage and cook, breaking it up with a wooden spoon, until browned, about 5 minutes. Add the spinach, 1/2 teaspoon salt, and pepper to taste and stir until heated through, about 2 more minutes. Remove from the heat and let cool completely.
Combine the spinach mixture, ricotta, 1 cup mozzarella, the parmesan, parsley and 1 teaspoon salt in a bowl. Stuff each shell with about 2 tablespoons of the filling; set aside.
Preheat the oven to 350 degrees F. Make the cheese sauce: Melt the butter with the garlic in a medium saucepan over medium heat. When the butter begins to foam, add the flour and whisk constantly until lightly golden, about 1 minute. Add the milk and cream, bring to a simmer and cook, whisking constantly, until the sauce is thick enough to coat a spoon, 2 to 3 minutes. Remove from the heat and whisk in the parmesan, 1/4 teaspoon salt, and nutmeg to taste.
Brush a 9-by-13-inch baking dish with olive oil and pour in about two-thirds of the cheese sauce. Add the stuffed shells and top with the remaining cheese sauce. Cover with aluminum foil and bake 20 minutes. Uncover and top with the marinara sauce and the remaining 1 cup mozzarella; continue baking until the sauce is bubbly, 15 to 20 more minutes.