Add fields in Matching CiviCRM fields on Import Contact
You can add custom fields for district.  Once you add the field you can map it in the import.  see http://gitbook.civicrm.org/organising-your-data/creating-custom-fields.html for how to add the field.

I'm not sure just what district is in this case.  If the addresses are for a foreign country that has district as part of the address, it may already sort of be there.  It may be stored in state province field.  If it is this case, you can see what's there by going to a contact, change the country and seeing what's in the pull downs.  If you are importing addresses from some other country you may need to add a field for country to your cvs.

I'm not sure I fully understand the mismatched file problem.  If you have both individuals and households in the same file you will get a mismatched contact problem.  Then you need to either run the file twice.  Once for individuals and once for households and ignore the errors or split the file into two.

The problem with the addressee is most likely picking the wrong field to map to.  The addressee field is expecting a smarty clause, like {contact.first_name}{ }{contact.middle_name}{ }{contact.last_name}, which creates the addressee on the fly by using using the values in other fields.  If you are trying import specific text to be the addressee then map it to "Addressee Custom".  (The same is true for postal and email greetings as well).