Brown the beef over high heat, starting to break up after getting a good initial sear. Break up into small pieces as it cooks and lower the heat. Remove with strainer or slotted spoon, leaving drippings in the pan.
Sautee onion, bell peppers, celery, and carrot in beef drippings until nicely soft and beginning to caramelize. If they get too dry and are in danger of scorching, use a little of the beef stock to deglaze. Add the garlic a few minutes before the onions are ready.
Add the spices and cook a few more minutes until fragrant.
Add the ground beef back to the pan, along with the beef stock, tomato puree, and Worcestershire sauce. Simmer until the sauce is reduced to the desired thickness for sloppy joes.
Taste and season with salt and pepper.