You should note that isolation levels aren't 100% in line with DB isolation levels. We just use the terms as analogies.
In reality, dealing with null nodes are different. For example, in your repeatable read case, try the same test with an older but value instead of a null.
It is not an excuse, it is still a limitation in our RR implementation. I've added a task to review our unit test suite around isolation levels as some scenarios are not well tested. See JBCACHE-1029
I've added a more comprehensive set of unit tests around isolation levels, but cannot recreate the 2nd failure you talk about above (with READ_UNCOMMITTED). Perhaps the EM has another layer of caching?