Place all marinade ingredients in a medium bowl and stir together until combined. Reserve and refrigerate 1/3 c marinade.
Place pork in a large resealable plastic bag. Pour remaining marinade over the pork, seal the bag and refrigerate 24 hours turning the bag occasionally.
When ready to grill, remove pork from bag and discard the bag and marinade. Light the two outside burners of your three burner grill or light one side and not the other on a two burner grill, placing a drip pan under grate where burner is NOT lit. Heat on high until hot and then turn down to low.
Place roast over drip pan on the unlit section of the grill. Cover and grill 2 hours or until internal temp reaches 170 degrees. You should maintain an internal grill temp of 300-350 degrees.
Remove roast to a cutting board and cover loosely with foil and let stand 15 minutes.
While roast is standing; in a small bowl, stir together cornstarch and water.
In a saucepan combine reserved marinade and orange juice. Over medium high heat, bring to a boil and then reduce heat to medium low. Simmer 5 minutes. Stir in lime juice ans sugar. Then stir in cornstarch mixture. Bring to a boil for 30 seconds or until slightly thickened.
Set aside. Slice pork about 1/4 inch thick. Rewarm sauce, add cilantro and serve on the side to put over sliced pork.