I had exactly the same problem. I'm a very good home cook, but with pot roast, there were soooo many variables. The size of the meat, the thickness, the amount of fat (depending on the cut).... all of this really threw me off. I tried oven roasting, stove top, crock pot...
Finally, for me, what worked was the following:
1) whatever piece of meat it is, pat dry it very very thoroughly with paper towels.
2) brown it in some oil (I don't agree with the notion that you have to "sear" it, just use a nice heavy pan and medium heat and get a nice brown color on the outside) - and brown it all over, all around. take your time with this step, it's where most of the flavor is created.
3) place it in the cooking pan with a nice tight lid (preferably heavy, cast iron or enamel dutch oven), with sliced onions, carrots, celery and whatever liquid mix you like. I don't use too much liquid. I've used leftover stock, red wine, DH likes ketchup and beef stock mixed half-and-half.
4) bake at a very low temperature. 250 degrees. The aim is low, slow cooking. I turn the meat over every hour or so, that way the top won't dry out.
Bake until the internal temperature of 160 (medium) is reached, or 170 for well-done. Invest in a good meat thermometer if you're really serious about your meat, it made a BIG difference for me. I do estimate my bake time according to weight - approximately 30 minutes per 1/2 pound. But again, the shape of the meat can have a big impact. A big, flat cut will cook faster than a smaller but very round piece. You'll start getting a sense of how the meat is cooking because as you flip it, you'll be able to feel how cooked (and how tender) the meat it.
I've tried the slow cooker too - it works if I've bought a BIG PIECE OF MEAT but when I've tried cooking smaller roasts (we're a light-eating family of 2.5) they always got overcooked and stringy. So sometimes I have to do it the really old-fashioned way, it's the only way I can get a small roast to taste good.
Good luck, I'd love to read other tips, I'm hoping to learn how to improve....