Prep and Season: Preheat your oven to 325°F (163°C). Pat the beef ribs completely dry with paper towels. In a small bowl, mix the kosher salt, black pepper, garlic powder, and onion powder. Season the ribs generously on all sides.
Sear the Ribs: In a large Dutch oven, heat the oil over medium-high heat. Carefully place the ribs in the pot, ensuring not to overcrowd it (work in batches if needed). Sear for 2-3 minutes per side until a deep, brown crust develops. This step is crucial for flavor. Remove the seared ribs to a plate and set aside.
Build the Gravy Base: Reduce the heat to medium. Add the sliced onions to the pot and cook, stirring occasionally, for 5-7 minutes until they soften and begin to caramelize. Add the smashed garlic and tomato paste, and cook for another minute until fragrant.
Braise the Ribs: Pour the beef broth, Worcestershire sauce, and thyme into the pot. Use a wooden spoon to scrape up any browned bits from the bottom. Return the seared beef ribs to the pot, nestling them into the liquid. The liquid should come about halfway up the ribs. Bring to a gentle simmer on the stovetop.
Cook Low and Slow: Cover the pot with its lid and carefully transfer it to the preheated oven. Braise for 2.5 to 3 hours. The ribs are done when they are exceptionally tender and a fork can slide into the meat with almost no resistance.
Finish and Serve: Carefully remove the ribs from the pot and set them on a platter. If you prefer a thicker gravy, bring the liquid in the pot to a simmer on the stovetop. Whisk the cornstarch and cold water together to create a slurry, then slowly whisk it into the simmering gravy until it reaches your desired thickness. Taste and adjust seasoning. Pour the rich gravy over the ribs and serve immediately.