Heat oil in a large frying pan over high heat until shimmering.
Sear short ribs undisturbed for 2-3 minutes per side, then brown edges for 1-2 minutes each.
Transfer browned ribs to a plate.
Add chopped onion to the same pan and cook 2 minutes until softened.
Add minced garlic and cook 1 minute, stirring constantly.
Pour in the beef broth, tomato paste, and apple cider vinegar mixture. Scrape up browned bits from the pan and let it simmer for 2–3 minutes.
Return ribs to the pan. Add beef stock, thyme, sugar, bay leaves, salt, pepper, and Worcestershire sauce.
Stir to dissolve tomato paste, then bring to a simmer.
Transfer everything to the crockpot. Cover and cook on low for 6-8 hours.
Ladle most of the cooking liquid into a saucepan and bring to a steady boil.
Whisk cornstarch and cold water in a small bowl until smooth.
Slowly pour slurry into the boiling liquid while whisking constantly until thickened, 1-2 minutes.
Taste and adjust salt and pepper. Serve ribs with gravy over mashed potatoes.