I think what you are proposing might be a good idea to try. You got this specific response on SO:
"I would dispose of the instance and start a new one after so many OCR operations; otherwise, the memory leaks in the native code will eventually crash the JVM."
I think the author meant just what you wrote now, to set the tess instance reference to null, so that it can be garbage collected.
But in my opinion this is a difficult problem. Tesseract was written in C++ and the Java API is merely a wrapper around it, using foreign interface. Even if you use a Java profiler, it would be difficult to figure out where are those 'memory leaks' the author mentioned and how to prevent them.