In a large skillet or Dutch oven, heat olive oil over medium heat. Add the onion and cook for 5 minutes, or until translucent. Add the garlic and tomato paste and cook for another minute. Add the crushed tomatoes, balsamic vinegar, sugar and Italian seasoning.
Reduce heat and simmer for 20 minutes. Adjust for seasoning with salt and pepper.
Preheat oven to 350°F. Bring large pot of salted water to a boil. Immerse the cabbage head in the boiling water. Cook for 5 minutes or until cabbage leaves are pliable. Peel 12 large leaves off the cabbage.
In a large bowl, mix together the ground meats, rice, onion, garlic, parsley, egg, salt, pepper and ½ cup of the tomato sauce lightly with your hands until everything is just combined.
Coat a 9x13 glass baking dish with cooking spray. Place ½ cup of the tomato sauce in the bottom of the baking dish.
Lay a cabbage leaf on a flat surface. Use a knife to cut a V-shaped notch to remove the thick part of the cabbage rib. Spoon ⅓ cup of the filling in the middle. Roll up, tucking in the sides as you roll. Place rolls seam side-down on top of sauce in baking dish and repeat with remaining cabbage leaves.
Spoon remaining sauce over the cabbage rolls. Cover tightly with aluminum foil and for 75-90 minutes or until the cabbage is tender and meat is cooked through. Top with some parsley before serving.
You have to cut the thick part of the cabbage leaf before rolling it up. Use a pairing knife to cut out a v-shape of the bottom of each leave.
Place the cabbage rolls seam-side down when baking so the filling doesn't fall out.
If you have smaller leaves and still have filling leftover just overlap the leaves and they'll still cook perfectly.
You can use jarred marinara sauce if you want but the traditional sauce is a sweet and sour style which is why homemade is better.
You can assemble the cabbage rolls up to a day ahead of time and cover in the fridge before baking them.
Leftovers will last in the fridge for 2-3 days or in the freezer for 3 months.