Trim fat from pork roast if necessary, then place meat in a slow cooker and pour stock over the top of the meat. Top evenly with onions, thyme, rosemary, garlic powder, and sprinkle with salt and pepper. Cover and cook on low for 8 - 9 hours (or on high for 4 1/2 hours).
During last 30 minutes of the pork cooking, in a saucepan, whisk together balsamic vinegar, ketchup, honey, brown sugar, worcestershire sauce, mustard, garlic, 1/4 tsp pepper and season with salt to taste (keep in mind pork is usually pretty salty so you won't need much).
Bring the sauce to a boil over medium heat, then reduce to a simmer and cook, stirring occasionally, until slightly thickened, which takes about 20 - 25 minutes.
Remove pork from slow cooker, shred while removing any fat. Drain liquid from slow cooker and remove about 1/2 the cooked onions. Leave the remaining onions, add shredded pork back to the slow cooker, set on "warm" setting, and pour in BBQ sauce and toss to combine.