Preheat your oven to 350°F (175°C). Spray a 9x13-inch baking dish with nonstick cooking spray.
Bring a large pot of salted water to a rolling boil. Cook the spaghetti according to package directions until al dente. Drain and set aside, do not rinse.
Heat olive oil in a large skillet over medium-high heat. Add the ground beef, season with salt and pepper, and cook until browned, about 6-8 minutes. Drain excess fat.
Add the minced garlic to the beef and cook for 30 seconds until fragrant. Stir in the marinara sauce and simmer for 3-5 minutes. Taste and adjust seasoning.
In a medium bowl, mix the softened cream cheese, sour cream, and Italian seasoning until completely smooth and lump-free.
Spread a thin layer of meat sauce (about ½ cup) on the bottom of the prepared baking dish. Top with half of the cooked spaghetti and press into an even layer.
Spoon the cream cheese mixture evenly over the spaghetti layer and spread to the edges.
Top with the remaining spaghetti, then pour the remaining meat sauce over the top, spreading to cover evenly.
Sprinkle the mozzarella and Parmesan cheeses evenly over the top.
Cover the dish with foil and bake for 25 minutes. Remove the foil and bake for an additional 10-15 minutes until the cheese is melted and golden brown.
Let the baked spaghetti rest for 5-10 minutes before slicing and serving. Garnish with fresh parsley if desired.