I feel like Rin jumps through different timelines or possible "futures" each time something terrible happens in her life. Before she jumped back to her 14 y.o. self, back to the day of A-chan's graduation, Koharu was involved in an accident as what we've seen in Rin's flashback. Now, when she returned to her 29 y.o. self, it happened after she discovered that A-chan was cheating on her.
Maybe terrible instances which are unbearable for Rin are the triggers for the time jump. It's possible that she's not jumping back to her 14 y.o. self because Shijou-san isn't causing her any pain and is really taking good care of her. There are no possible triggers so she remains in her 29 y.o. self.