In a large mixing bowl, combine the ground beef, ground pork, rice, 1/2 of the chopped onion, egg, parsley, garlic powder, salt, black pepper, smoked paprika, cayenne pepper and Worcestershire sauce. Mix very well with your hands, or a wooden spoon, until completely combined. Cover and refrigerate until needed.
Bring a large pot of water to a boil. Remove core from the head of cabbage. Carefully lower the head of cabbage into the water using a large meat/grill fork or tongs. As the cabbage simmers, the leaves will start to loosen and can be pulled off with a pair of tongs. As each cabbage leaf comes loose, remove it from the simmering water, and into a bowl of cold water. You'll need about 12 large leaves. Reserve 4 or 5 leaves. Chop remaining cabbage for the sauce.
In large saucepan add oil and remaining onion and chopped cabbage. Saute on med until onions have begun to soften. Add garlic and tomato paste. Cook 2 minutes to remove the raw flavor from the paste. Stir in san marzano tomatoes and crush using a potato / vegetable masher or the back of a wooden spoon. Add the beef broth, water, brown sugar, cider vinegar and bring to a simmer over medium-high heat for 10 minutes. Add salt and pepper to taste. Remove from heat.
When the cabbage leaves have cooled, remove the ribs with a sharp knife. Remove the meat mixture from the refrigerator and divide into 12 equal portions and roll each into a log shape. Place the meat at the bottom of the cabbage leaf and roll up, folding in the sides in as you roll. The rice will expand, so don't roll too tightly.
Place a large pot or dutch oven on the stove top / med heat. Place the reserved cabbage leaves on the bottom. Layer cabbage rolls into the pan. Pour the sauce gently into the pot over the cabbage rolls. If needed, add water so that the cabbage rolls are covered by about an inch of liquid.
Cover and simmer on med/low for 1 hr 15 minute to 1 hr 30 minutes