01 - Preheat oven to 375°F. Lightly grease a 9x13-inch baking dish and set aside.
02 - Place the diced sweet potatoes in a medium pot of salted water. Bring to a boil and cook until just tender, about 8-10 minutes. Drain thoroughly and set aside.
03 - Heat olive oil in a large skillet over medium heat. Add the chopped onion and minced garlic, sautéing until softened and fragrant, about 3 minutes.
04 - Add the lean ground beef to the skillet, cooking until fully browned. Break the meat apart with a spoon as it cooks, 5-7 minutes. Drain any excess fat if necessary.
05 - Stir in the drained diced tomatoes, dried oregano, paprika, salt, and pepper. Cook for an additional 2-3 minutes to allow the flavors to meld. Fold in the baby spinach and cook until just wilted, if using.
06 - Spread half of the parboiled sweet potatoes evenly across the bottom of the prepared baking dish.
07 - Spoon the seasoned ground beef mixture over the sweet potato layer, distributing it in an even layer.
08 - Dollop the cottage cheese over the beef layer and spread it gently into an even coating.
09 - Arrange the remaining sweet potatoes over the cottage cheese layer. Sprinkle the shredded mozzarella and grated Parmesan evenly across the top.
10 - Bake uncovered for 25-30 minutes, until the cheese is bubbly and golden brown on top.
11 - Remove from the oven and allow the casserole to rest for 5 minutes before slicing and serving.