Couple of things. 1> you can use a different analyzer to NOT remove stopwords. SimpleAnalyzer comes to mind (though watch out for case). Look at LuceneInAction for an explanation of several analyzers that are available.
2> If memory servers, Lucene defaults to indexing only the first 10,000 words of a document, so it's quite possible that you are missing parts of your document. I believe this is configurable, but haven't had to delve into it yet, but IndexWriter.setMaximumFieldLength looks promising... Best Erick