Preheat your oven to 350°F.
Cook the spaghetti according to package instructions. Drain and toss with 1/4 cup of butter.
In a Dutch oven, brown ground beef and Italian sausage over medium heat. Add diced onions and cook until softened.
Stir in crushed tomatoes, tomato sauce, Italian seasoning, minced garlic, salt, and black pepper. Simmer for 15-20 minutes.
In a separate bowl, combine cream cheese, cottage cheese, sour cream, shredded Parmesan, dried parsley, and salt. Mix until smooth.
Add the creamy cheese mixture to the meat sauce, stirring until well combined.
Place a layer of the cooked spaghetti in a greased casserole dish.
Pour the meat and cheese sauce over the spaghetti layer.
Sprinkle shredded mozzarella cheese on top, and finish with a sprinkle of dried parsley.
Bake in the preheated oven for 30-35 minutes or until the cheese is melted and bubbly.
Allow the spaghetti bake to cool for a few minutes before serving.