Core the cabbage and carefully separate the leaves. Blanch the leaves in boiling water for 2-3 minutes until they become pliable. Drain and set aside.
In a large bowl, combine the ground pork, cooked rice, chopped onion, minced garlic, egg, parsley, paprika, salt, and pepper. Mix until well combined.
Place a spoonful of the meat mixture onto each cabbage leaf. Fold the sides over the filling and roll up the leaf to enclose the filling. Secure with toothpicks or tie with kitchen twine if needed.
In a large pot or Dutch oven, combine the tomato sauce, sauerkraut, water or broth, caraway seeds, bay leaf, and sugar if using. Stir well.
Arrange the cabbage rolls seam side down in the pot with the sauce. If there’s extra filling or leftover cabbage leaves, you can add them to the pot as well.
Bring the sauce to a boil, then reduce the heat to low. Cover and simmer for 1.5 to 2 hours, or until the cabbage is tender and the filling is cooked through.
Remove the toothpicks or kitchen twine from the cabbage rolls before serving.
Enjoy your meal!