Preheat an oven to 325 degrees F. Sprinkle ribs with salt and pepper. Heat the oil in a heavy large pot over medium-high heat. Add the ribs and brown evenly on all sides, about 5 minutes. Transfer the ribs to paper towels to drain briefly.
Add onions to the same pot and saute over medium-high heat, until browned, about 5 minutes. Add the carrots and saute until crisp-tender, about 5 minutes longer. Add the garlic and saute for 1 minute. Stir in the tomato sauce, barbecue sauce and beef broth. Reduce the heat to medium-low and simmer for 1 minute to blend the flavors. Add the ribs to the sauce.
Bake until the meat is very tender, turning ribs occasionally, about 2 1/2 hours. Season to taste with salt and pepper. Place on warm plates and serve immediately.