Peel and roughly chop the onion and garlic.
Thoroughly salt and pepper the pork roast on all sides. To ensure the pork holds its shape well during roasting, tie it with kitchen twine.
In an oven-safe baking dish, heat the oil to a higher temperature. In well-heated fat, brown the roast on all sides. Set the seared meat aside on a plate.
Reduce the heat to medium. Put the chopped onion and garlic in a roasting pan with the browned bits and sauté for about five minutes, stirring constantly. Add a little more fat or a tablespoon or two of water if needed.
Preheat the oven to 300°F/150°C, lower and upper heat. Place the roast over a bed of sautéed onions and garlic and add half a cup of water. Roast uncovered in the preheated oven for an hour.
When the roast done, remove it from the pan and wrap it in a sheet of foil to rest.
In the meantime, prepare a flavorful gravy with onion, garlic, and drippings. Carefully transfer the contents of the baking dish to a mixing bowl and briefly mix using an immersion blender. If the mixture is too thick, add a few tablespoons of water. Place a sieve over a saucepan and pour the blended mixture into the sieve. Using a spoon, push it through the sieve to get a smooth gravy in the pan without a large amount of residual onions. Heat the gravy, taste it, and add salt or pepper if necessary.
Remove pork from the foil. If any juice is left in the aluminum foil, pour it into the gravy. Using a sharp knife, cut the roast into thin slices, about ⅓ inch (0.8 cm) thick.