The /bɪn/ pronunciation for "been" is I believe quite old. The Oxford English Dictionary says
The standard form been derives from the latter, and, in unstressed position, develops a weak pronunciation with shortened vowel in early modern English (continued as /bɪn/ and, in a less reduced form, as U.S. English /bɛn/).
Also, it indicates that spellings like "binne" and "bin" have been used as far back as the 16th century.
Even though "ee" is the standard spelling in present-day English, I don't think that the pronunciation with /ɪ/ is particularly stigmatized by most speakers, although I'm an American English speaker so it might have connotations that I am unaware of in British English.
For me, there are no exceptions: "been" is always pronounced /bɪn/, even when it is strongly accented for emphasis.
I don't pronounce "seen" as /sɪn/, and I can't think of any other word where I pronounce "een" as /ɪn/. However JeffUK pointed out in a comment that in some British English dialects, it is pronounced that way, particularly in the East Anglian and Norfolk accents. (30 seconds into this YouTube video)
The past participle of "do", "done", shows historical shortening of a different vowel: as far as I know, in standard British and American English, the only pronunciation that exists for this word is /dʌn/, or in weak contexts possibly /dən/.
The past participle of "go", "gone", also shows shortening, although in American English the quality is variable, and may be either /ɔ/ or /ɑ/.
The strong past tense (in modern English also used as a past participle) of "shine", "shone", is pronounced with shortened /ɒ/ in British English, but often pronounced with long /oʊ/ in American English.