Thoroughly pat dry roast with paper towels. Any moisture will prohibit a nice crust from forming. Season both sides with salt and pepper. If the roast cannot fit into the Instant pot, cut into large chunks that are no smaller than about 4 inches wide.
Heat pressure cooker to browning (saute mode) setting. Heat oil and once hot, add pork roast. If you cut the roast, you may need to brown the portions in batches to avoid overcrowding. Brown for 5 minutes on both sides. If browning in batches, set the seared pieces aside on a plate and once done browning all the meat, transfer them back to the Instant Pot along with any juices that have accumulated on the plate.
Add onion, apples, broth, juice, rosemary, sage, and bay leave. Close lid and set to high pressure. Cook at high pressure for 60 minutes. Allow to naturally release pressure once done cooking.
Once you can remove the lid, carefully remove roast, set on plate, and loosely tent with aluminum foil.
Strain out all the solids from the liquid by pressing through a fine mesh sieve. Discard solids and reserve the liquid for the gravy.
Using your the Instant Pot on the saute setting, heat butter and flour in the empty hot pot and allow to cook until golden brown while stirring constantly, about 3-5 minutes. Whisk in the hot liquid to form the gravy and stir well until thoroughly mixed and thickened.
To serve, shred the pork roast away from the bone in large chunks and remove any remaining fat. Smother it with the apple gravy.