Combine the first 7 ingredients in a large bowl. Add the short ribs. Cover and marinate the ribs 8 hours, or overnight, turning occasionally.
Preheat oven to 450 degrees F.
Remove the ribs from the marinade and set in a single layer, bone side down, in a roasting pan. Roast the ribs for 30 minutes, or until richly browned.
While the ribs roast, place the marinade in a pot and whisk in the cornstarch and barbecue sauce. Bring to a boil, and then remove from the heat.
After the ribs have roasted 30 minutes, drain off the excess fat. Pour the marinade mixture over the ribs and cover the pan. Turn the oven 300 degrees F. Cook the ribs 2 to 2 1/2 hours more, or until very tender. Plate the ribs, top with the sauce, sprinkle with green onion, and serve.