The solution is to use a USB / serial driver that does not assert the DTR when it is opened. That will require you to either:-
1) Rewrite the Java driver / computer's OS driver.
2) Use a silicon Labs USB / serial chip, on a Mac, which does not support DTR on connect, and wire directly into the TX & RX pins.
3) Write your java code so it does not keep opening and closing the serial port.
Now are you sure that cutting a link or fitting a switch on the arduino, or smothering the pulse with a capacitor is not a whole lot easier? Most people would disagree which is why there is not a ready written alternative. If you do write one then please make the code available to others.
but none provided a real proper solution on how to solve this
They are real proper solutions, only you chose not to find them acceptable.