In a large skillet, heat the oil over medium-high heat. Add the turkey, onion, and garlic and cook, breaking the meat up with a spoon, until browned, 3 to 5 minutes.
Mix the tomato sauce, sugar, barbecue sauce, and Worcestershire into the turkey mixture; season with ½ teaspoon salt and ¼ teaspoon pepper. Reduce heat and simmer until thickened, 3 to 5 minutes.
Meanwhile, in a medium bowl, whisk together the sour cream, vinegar, ½ teaspoon salt, and ¼ teaspoon pepper. Add the cabbage and carrots and toss to combine.
Serve the turkey mixture on the buns with the coleslaw.