How to create file field instance that allow teaser and full description and not allowed extensions but denied extensions?
The second part of your question is easy with the File Entity module - it turns file uploads into fieldable entities, so adding your teaser/description field is just like adding a field anywhere else in Drupal (make you sure you read the README file - it's not overly clear at first).  The module is also on an unstable release, but Dave Reid is pretty damn awesome so I can't imagine it'll be that way for long :-)

Off the top of my head, I can't think of an answer to the first part though I'm afraid.

EDIT

There's an issue here that has a couple of patches for Core that give you a radio box to either Allow only these file types or Allow everything EXCEPT these file types.  I've not tested the patches as I don't really want to patch Core for something that I personally don't need, but definitely give it a read!