Nobody really knows. Up until the 14th century, the first person pronoun in English was ich
(with variations - spelling was not yet standardised and pronunciation subject to regional variation) - written with lower case i
without a dot on top and with the vowel pronounced "ee". Gradually the final consonant sound was dropped (a trend which started in the north and worked south) and many Middle English manuscripts contain both ich
Around about the late 14th century the use of the capital "I" starts to appear in manuscripts such as Chaucer's Canterbury Tales, again with variations, like "Y". The variations persisted though. Shakespeare uses "ice" (pronounced "ichay" , "eeker" or "ikay" ??) and in the mid-19th century, a dialect in the west of England was still using "utchy"
The most obvious theory for why it happened is to give it more importance - especially as a single letter looks insignificant when written down. But it's only a theory. And as before 1300 the use of upper/lower case was much more flexible anyway, it may just have been chance : a few writers happened to use the capital and it stuck.
The trend now seems to be reversing. Emails and text messages may well herald the end of the capital "I".
English isn't the only language to capitalise pronouns of course - Sie
in German or Lei
in Italian. But interestingly these are the "polite" second person pronouns. If the psychological theory is correct - ie capitalisation reflects the psychological degree of importance - then English speakers must be somewhat more egotistical than most ... but I'm not sure that utchy would want to agree with that