Mix paprika, garlic powder, brown sugar, dry mustard, and salt in a small bowl. Rub spice blend all over pork. Cover and refrigerate for at least 1 hour, or up to overnight.
Preheat oven to 300°. Roast pork in roasting pan for about 6 hours. It is ready when falling apart.
Make barbecue sauce by combining vinegar, mustard, ketchup, brown sugar, garlic, salt, cayenne, and black pepper in a saucepan over medium heat. Simmer gently, stirring for 10 minutes until sugar dissolves. Set aside until pork is done.
When pork is ready, remove from oven and place on a large platter. Allow meat to rest about 10 minutes. While resting, deglaze the pan over medium heat with ¾ cup water, scraping with a wooden spoon to pick up all the browned bits. Reduce by about half. Pour into the saucepan with barbecue sauce and cook 5 minutes.
While pork is still warm, shred the meat with two forks.
Put shredded pork in a bowl and pour half the sauce over. Stir well so the pork is coated with sauce.
To serve, spoon pulled pork mixture onto bottom half of hamburger bun. Top with coleslaw or serve on the side. Serve remaining sauce on the side.