Pour 1 teaspoon olive oil into a slow cooker and arrange sliced onion over oil.
Place pork roast over onion.
Cook on Low until pork is very tender, 8 to 9 hours.
Transfer roast to a platter and discard onion and liquid. Shred pork with two forks.
Heat remaining 2 tablespoons olive oil in a stock pot over medium heat; cook and stir chopped onion, garlic, and red pepper flakes until onion is translucent, about 5 minutes.
Add shredded pork, tomato paste, molasses, brown sugar, Worcestershire sauce, balsamic vinegar, salt, and black pepper; stir well. Cover and simmer until sauce is thickened, stirring occasionally, about 30 minutes.