Solution is to either patch the ../web/libraries/civicrm/bower_components/select2/select2.js and select2.min.js files
Move the select2 folder out of bower_components and run:
$ bower install select2
to get latest version of select2 (4.0.12 as of this writing) , which is accessible. I've not fully tested the latest version of select2, but it seems to ...
Based on chat discussion there was a missing database field for unknown reasons. Running this helped:
ALTER TABLE civicrm_membership ADD COLUMN status_override_end_date date DEFAULT NULL COMMENT 'Then end date of membership status override if ''Override until selected date'' override type is selected.';
I'm wondering if using a webform might be a better solution. You could have a paginated webform using webform civicrm, that gets the data into CiviCRM. Then on the webform adnaced, do a redirect to the Drupal registration form with the email address prefilled using the Drupal Prepopulate module.