I and others I know have had incredibly good results from
www.finerworks.com in Texas. They will do single prints on high-quality art/watercolor paper at a very reasonable price, and will drop ship if you want. For example, one 16x20 print costs $28.20. Were one to go as large as, say, 24x36, the cost would be about $78.00 per print. There is a turnaround time of about 4-5 days. They will also print on canvas, and will stretch it if one wants, also very reasonably. There's no set-up cost. You need to have a high-res digital photo to upload, which you would correct in Photoshop. Obviously, the better the uploaded image the better the prints. The prints I've got from them are as good as any I've seen.
I think this may be the answer to the question about creating good quality copies of portraits to give to family and friends.
John C.