Preheat the oven to 350°F (175°C).
In a large skillet over medium heat, add the ground beef and Italian sausage, breaking them apart with a spoon. Cook until browned, about 7-10 minutes. Drain excess fat if necessary.
Add the diced onion and minced garlic to the skillet. Sauté for 3-4 minutes until the onion is soft.
Stir in the crushed tomatoes, pizza sauce, oregano, basil, salt, and pepper. Let it simmer on low heat for about 10 minutes.
Meanwhile, cook the rotini pasta in a large pot according to package instructions until al dente. Drain and set aside.
In a large mixing bowl, combine the cooked pasta with the meat sauce mixture and half of both the mozzarella and cheddar cheeses. Mix well.
Pour the casserole mixture into a greased 9x13 inch baking dish. Top with the remaining mozzarella and cheddar cheeses, along with the pepperoni slices.
Bake in the preheated oven for 25-30 minutes, or until the cheese is bubbly and golden.
Remove from the oven and let it cool for a few minutes before serving.