In a large skillet or Dutch oven, heat the olive oil or butter over medium heat. Add the finely diced onion and green bell pepper. Sauté for 5-7 minutes, stirring occasionally, until the vegetables have softened.
Add the minced garlic and cook for another minute until fragrant, being careful not to let it burn.
Push the vegetables to one side of the skillet and add the ground beef to the other side. Increase the heat to medium-high. Break up the meat with a spoon and cook until browned all over, about 6-8 minutes.
Carefully drain off any excess grease from the pan.
Reduce the heat to medium. Sprinkle the chili powder, dry mustard powder, salt, and pepper over the beef and vegetable mixture. Stir to combine and cook for one minute until the spices are fragrant.
Stir in the ketchup, water, brown sugar, apple cider vinegar, and Worcestershire sauce. Mix until everything is thoroughly combined.
Bring the mixture to a gentle bubble, then reduce the heat to low. Let it simmer, uncovered, for 15-20 minutes, stirring occasionally, until the sauce has thickened to your desired consistency.
While the sauce simmers, toast the hamburger buns. Serve the sloppy joe mixture generously on the toasted buns.