Trim any excess fat from the roast and sprinkle with salt and pepper.
Place roast in a large nonmetallic bowl or into a sealable plastic bag. Add vinegar, wine, bay leaves, peppercorns, cloves, and one sliced onion. Add water to cover.
Tightly cover bowl (or seal bag) and refrigerate for 3 to 5 days, turning once or twice every day.
Drain meat, reserving marinade. Wipe meat with paper towels to dry.
In a deep saucepan or a Dutch oven, put about 2 to 3 tablespoons bacon fat, butter, or oil to brown meat over medium-high heat.
Brown roast on all sides. Remove roast to slow cooker or place on a plate.
Add carrots, onions, and celery to saucepan. Brown slightly. Add 1 cup broth and 1 cup strained reserved marinade and stir to loosen the browned bits at the bottom.
Pour contents of saucepan over the meat in the slow cooker or place the meat back into the saucepan, spooning some of the liquid over the meat.
For the slow cooker, cook covered on low for about 7 to 8 hours. On the stove top, simmer covered on low heat for 2 to 3 hours, or place covered in 350°F oven for 2 to 3 hours.
Remove meat and strain the cooking liquid into a small saucepan. For the north German-style, make a cornstarch slurry and slowly add to simmering cooking liquid until thickened for gravy. Remove from heat and stir in sour cream if using.
For the south German-style, stir in crushed gingersnaps and simmer until slightly thickened, adding a bit of cornstarch slurry if needed. Season with additional salt and pepper if needed.
Slice meat and serve with gravy, potato dumplings, and red cabbage.
