In a large skillet over medium-high heat, heat oil until shimmering. Cook onion and bell pepper, stirring occasionally, until softened and slightly golden, 10 to 15 minutes.
Add the garlic and cook for 1 minute until fragrant.
Stir in the chili powder and tomato paste cooking until the mixture has turned a deep burgundy color.
Add the ground beef to the skillet and season with the salt and black pepper. Cook, breaking the beef into crumbles, until browned and no longer pink, approximately 5–7 minutes. Spoon off excess grease if needed.
In a bowl, whisk together the Worcestershire sauce, apple cider vinegar, yellow mustard, brown sugar and tomato sauce. Pour the sauce over the ground beef and stir to combine.
Reduce the heat to low and simmer uncovered for about 10 minutes, stirring occasionally, until the sauce is thickened and clings to the beef. If it becomes too thick, stir in a tablespoon of water or tomato sauce.
Divide beef mixture among buns and serve.
Video
Notes
Leftover Sloppy Joe will last in the refrigerator for up to 5 days.
Make ahead: The Sloppy Joe filling can be prepared in advance, cooled and refrigerated until ready to serve.
Freezing: Cool completely and freeze in an airtight container or freezer bag for up to 3 months. Thaw overnight in the refrigerator.
Reheating: Warm gently on the stovetop or microwave until heated through. Add a splash of water or tomato sauce if the filling becomes too thick.
Substitution: Ground turkey or ground chicken can be used in place of the beef.