Really, this has bothered me for years. Most of the time in English, "eigh" sounds like "ay" ('weigh', neighbor', 'sleigh'). The only instance I can come up with where it doesn't is in "height" and related words. Those seem to be coincidence, etymologically ("high" + "th" [measurement suffix] = "height"). So why does Leigh say "lee"?
The name Lee has at least two sources:
The less common is an Anglicization of the Irish surname O'Laoidheach. O' is the typical Irish patronymic, of course, equivalent to "-son" in English. Laoidheach, through the fun that is Gaelic linguistics, is pronounced "lee-ock". It means "poetic" or "songful" and was an occupational name for poets & bards.
The more common source is the Old English word for 'field'--"lea". As a surname, it was given to someone who lived by or worked a field. Although Gaelic names are full of letter combinations odd to English, it much more likely that the latter is actually the source of Leigh's unintuitive spelling.
Being an nice old word before dictionaries were invented and literacy was common, there were a lot of alternate spellings for "lea": ley, leye, lei, lēah. Even older spellings included leag, lege, legh, and læch (all likely pronounced something like "lag" or "leeg")
Somewhere along the line, the spellings got jumbled into "leigh", and while the 'gh' sound was dropped, the spelling never changed.