Новый метод выдаёт много true/false с последующей ошибкой "Exception in thread «main» java.lang.StackOverflowError". Как исправить?
Проблема в том, что метод бесконечно вызывает сам себя безо всяких условий.
"Компьютер делает не то, что вы хотели, а то, что вы приказали" :-)))

Замени return isNegative(number); на return (number < 0); і буде тобі щастя.