Pork Roasts are fine for that type of cooking. What's probably happening is that the pork is being overcooked. The common standard for internal doneness of pork is 150 degrees, but the best way to ensure moist pork is to cook it until 140-145 degrees. Invest in a probe or meat thermometer, calibrate it, and your pork should turn out better in the future.
"Boldness has genius, power, and magic in it."
Johann Wolfgang Von Goethe