Preheat the oven to 300 degrees F or Traeger to 225 degrees if smoking.
Melt butter in a small skillet over medium heat. Stir in garlic, oregano, cayenne pepper, black pepper, thyme, and mustard; cook for 1 minute. Cut several small slits in fat side of pork loin using a paring knife; stuff slits with butter-spice mixture. Rub remaining mixture over surface of pork loin; season pork loin with cajun seasoning, salt, and black pepper.
Heat olive oil in a roasting pan over medium heat; add pork loin. Surround pork loin with carrots, onion, bell pepper, and celery; lightly season vegetables with cajun seasoning, salt, and black pepper.
Cook in the preheated oven for 1 ¾ hours. Increase oven temperature to 425 degrees F; cook until pork loin browned, 15 minutes. An instant-read thermometer inserted into the center should read at least 145 degrees F.
If smoking then smoke pork loin until internal temp of 120 degrees F about 1 hour to an hour and a half. Then crank the grill up to 400, move pork loin to top rack of smoker, and place cast iron skillet with veggies under the pork loin to collect the drippings until the pork loin hits an internal temp of 145 degrees F
Transfer roast to a cutting board; let stand before slicing, 10 minutes.
Meanwhile, place roasting pan, with pan juices, over medium heat. Whisk in flour; cook 3 minutes. Pour in chicken stock; cook, whisking occasionally, for 6 minutes. Strain sauce through a sieve; serve with sliced pork roast.