Layer the sliced onion in the bottom of the slow cooker and set the pork shoulder on top.
Stir together half the BBQ sauce, 2 tablespoons of the vinegar, smoked paprika, garlic powder, salt, and pepper. Pour this mixture over the pork.
Cover and cook on low for 8 hours until the pork is very tender.
Remove the pork and shred it with two forks. Return the meat to the slow cooker and stir in the remaining BBQ sauce.
In a separate bowl, combine the cabbage, carrot, mayonnaise, honey, remaining tablespoon of vinegar, salt, and pepper. Toss until evenly coated.
Pile the pulled pork onto the buns and top with a generous scoop of the coleslaw.