If you're looking for fastest read operations, probably the first place to look is the speed of the actual read, and transfer across the network, with MongoDB. The processing within Java (within reason) will be a very low % of the total request time. You may have already done this, but take a look at the raw reads from MongoDB (indexes, query, number of records, database schema, configuration etc)
For the java processing it is very dependant on what you want to do with the results. I'd suggest you create some tests for the various options for java processing, this is likely CPU bound. If you can create a test that processes many records at a time, you can see the performance characteristics of each.
Could you manually write the code the create POJOs from the document? this may well be the most performant. Otherwise an ODM like morphia https://code.google.com/p/morphia/
If you are familiar/using Spring (as mentioned above) already See: http://projects.spring.io/spring-data-mongodb/ maybe take a look at: http://spring.io/guides/gs/accessing-data-mongo/