I realize there's a firstLineMatch field that solves this problem in situations where a file type must have a "signature" on its first line, but a lot of files types don't have this. Perhaps an additional (but optional) field is necessary: lineMatch, for example. Like firstLineMatch, this would be a regular expression, but instead of matching only the first line, it would match any line in the file. TextMate could run this regular expression through a file when it's loaded, and if it gets a match, it would know the true language of the file and could automatically set the file type.
Scanning the entire file (then scanning it again when you choose a syntax) is probably a bit too taxing, especially for large files. It has been mentioned before to expand it to scan the first few lines however, though I don't know what allan's plans are for it.