In a shallow baking dish, combine the flour, granulated garlic and onion powder.
Season the pork with salt and pepper on all sides, then coat it with the flour mixture. This will help build a crust on the outside.
Heat the olive oil in a large skillet over high heat. When the pan is screaming hot, sear the pork on all sides. For a nice crust, leave the pork for 2-3 minutes without moving, which allow it to sear beautifully.
Once the pork has been seared on all sides, place it in the slow cooker.
Reduce the heat to medium-low in the skillet and add the butter.
Once the butter is melted, add the onions and garlic and let them cook slowly until they onions are tender. Season with salt and pepper. You want the mixture to take on a golden color.
Transfer the onion mixture, and the pan drippings, to the slow cooker.
In a small bowl, whisk together the red wine vinegar, Worcestershire sauce, water and BBQ sauce. Pour the mixture into the slow cooker.
Cover with the lid and set the slow cooker on LOW for 8 hours.
When the timer goes off, remove the pork to a cutting board and let rest a couple of minutes. In the meantime, skim the fat off the top of the cooking liquid and discard.
Using pulled pork shredders or two forks, pull the meat apart. Place the meat back into the cooking liquid so it stays moist. Taste for seasoning and add salt and pepper as needed.