How to merge two different pages on one page
Hide the tab on the user account page.

function MY_MODULE_menu_alter(&amp;$items) {
  $items['user/%user_category/edit/profile']['access callback'] = FALSE;
}


Then, merge the profile2 form with the user account form itself :

/**
 * Implements hook_form_FORM_ID_alter() for the user edit form.
 */
function MY_MODULE_form_user_profile_form_alter(&amp;$form, &amp;$form_state) {
  if (($type = profile2_get_types('profile')) &amp;&amp; $type-&gt;userCategory) {
    if (empty($form_state['profiles'])) {
      $profile = profile2_load_by_user($form['#user'], 'profile');
      if (empty($profile)) {
        $profile = profile_create(array('type' =&gt; 'profile', 'uid' =&gt; $form['#user']-&gt;uid));
      }
      $form_state['profiles'][$profile-&gt;type] = $profile;
    }
    profile2_attach_form($form, $form_state);
  }
}


From http://www.jide.fr/english/add-profile2-form-directly-on-the-user-edit-form