How to create a user editable dropdown field?
I'm not 100% I follow, so I apologize if this isn't what you are looking for. Are these values being managed/edited within the CP? Or are the editors adding these values from a front-end form?

A project I worked on needed a base set of values in a drop-down field for each entry. But each entry that was created by the author could have additional values (or less). The way I did this was to create a table field in the CP. It consisted of two columns label and value.

This way I could have a "default" set of values that each entry would inherit. The author could then add additional rows (or remove) as they needed.

In the template, I just treated the table as a drop-down (in your case it will be a multi-select).

&lt;option value=""&gt;Select&lt;/option&gt;
    {% for option in entry.myField %}
        &lt;option value="{{ option.value }}"&gt;{{ option.label }}&lt;/option&gt;
    {% endfor %}
&lt;/select&gt;


Hope this helps!

Edit/Update

I still think if you don't want to go the category route, you could do this within a field. I've attached a screenshot of what this looked like on a similar project. The label is the left column, and the value is the right. Each row is a new value in my drop-down field that is created on the front-end.

By default all of these values are in the dropdown for each entry. The author can add/remove whatever they want in addition to the default data. But, whenever "New Entry" is pressed, each entry starts with the same data.

Where it might get tricky is if you want these added/removed values to persist from entry to entry. You'd probably have to write some sort of plugin that saved the new values back to the original field.