Force capitalization of terms on entry with Autocomplete Deluxe module
The Taxonomy dupecheck module would probably help for most of that (I'm not entirely sure about the case-sensitivity issue but give it a try; MySQL queries for term names will be case-insensitive so my gut instinct is this would work)


  Taxonomy dupecheck module prevents Drupal administrators from adding duplicate taxonomy vocabularies and/or terms. It's helpful when entering large amounts of terms or vocabularies in situations where each value must be unique. This saves time by preventing administrators from having to enforce a unique value policy through later cleanup of duplicate terms.


To force title-case on the term you could implement hook_taxonomy_term_presave() in a custom module and force it like so:

function MYMODULE_taxonomy_term_presave($term) {
  if (some_condition_applies_to($term)) {
    $term-&gt;name = ucwords($term-&gt;name); // Or ucfirst() depending on your requirement
  }
}