Прежде всего
^([^RUN])
работает неправильно, так как будет соответствовать любой строке, которая не начинается с R, U или N.
Вы должны использовать lookahead:
^(?!RUN)
Это должно делать то, что вы хотите:
Pattern p = Pattern.compile("\n(RUN)", Pattern.DOTALL);
Matcher matcher = p.matcher("lineone one\nRUN lineone two\nlineone three\nRUN lineone four");
String replaceAll = matcher.replaceAll(" $1");
System.out.println(replaceAll);