Steve I both agree and disagree.
I think my underlying issue is your step 1.1. The ORM creates the index named "IDX_76FF8CAA8E48560F" and there is NO extension point for being able to override that behavior. FWIW, I've never been fond of the way that the ORM uses the AbstractAsset::_generateIdentifierName for generating the index and foreign key.
So I definitely agree that its is an ORM issue not DBAL issue . However, as I stated previously, until the ORM is updated/patched to allow for index naming, this (in my opinion) is a regression despite it working the way it currently does (correct or not).
I can close out this issue and open one for ORM. Do you have a old branch and/or ORM ticket that I can reference?
Thanks for engaging in the dialog! I hope to be of assistance in helping come up with a solution that gets everyone happy.