To Marinate: Pierce meaty sides of meat with fork; place roast in a large plastic bag. In a medium bowl combine the soy sauce, sherry, honey, garlic and ginger. Mix well and pour mixture into bag with pork. Press air out of the bag and tie securely. Refrigerate at least 8 hours or overnight, turning bag over occasionally.
Preheat oven to 325 degrees F (165 degrees C).
Remove roast and marinade from refrigerator. Reserving marinade, remove roast and place in a 9x13 inch baking dish. Roast in the preheated oven for 1 hour. Brush with reserved marinade; cover loosely with foil and roast for an additional 1 1/2 hours (or until the internal temperature has reached 145 degrees F (63 degrees C), brushing several times with marinade.
Remove roast from oven and let stand 15 minutes. Combine pan drippings with remaining marinade. In a small bowl combine cornstarch with cold water, mix together and add mixture to marinade. Boil marinade mixture for 4 to 5 minutes, or until mixture thickens. Serve with roast.