DB table that exists says it doesn't
It's not really an answer, but I did fiddle around with things enough to break it into working again.  I ended up dumping the DB to a backup, dropping both new columns, civicrm_price_field_value.help_pre_en_US and civicrm_price_field_value.help_post_en_US, then changing the DB version back to 4.7.9.  I then re-ran the upgrade and got a "Table already exists" error on another table.  Dumped the backup back into the DB, recreated the two columns from above, changed the version back, and now everything seems kosher for the most part.  I can add/delete/change price sets and therefore work with Events. Can't edit the broken events, but that's a leftover issue I can work around.