How to use one field with different settings
Set the maximum number of values to unlimited.

Then using hook_form_alter change the categories select to only allow 1 value on the user profile form:

function YOUR_MODULE_form_alter(&amp;$form, &amp;$form_state, $form_id) {

    //drupal_set_message("Form ID is : " . $form_id);

    switch($form_id) {

        case 'user_profile_form':

            //dpm($form);
            $form['field_category'][LANGUAGE_NONE]['#multiple'] = false;
            break;

    }
}


If need be you could also add an additional validation handler here to add some custom server side validation to make sure that the user is not selecting more than 1 department.