How can I disable account settings?
You could use hook_menu_alter(). Something like this should work:

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

function yourmodule_user_custom_access_function($u){
  return user_access('administer users');
}


This way, only users with "administer users" permissions will be able to edit user informations.