A couple of thoughts on Keiichi:
1) While Keiichi is not always the most perceptive person, what he does perceive, he seems to always attempt to really acknowledge it and respond to it. In fact, you might even say that this Keiichi’s most essential trait.
The part in Tsumihoroboshi where he remembers killing Rena and Mion is a good example of this. He doesn’t try to escape the weight of his sins at all (for example, by trying to shift at least part of the blame onto Rena or Mion, or by dismissing his memories as not real). It’s like, he’s determined to shoulder this thing, even if it breaks him. And maybe it would have, if Rika hadn’t forgiven him, or if he didn’t have the chance to save Rena.
I’m not just talking about major events, either. There are countless examples of Keiichi doing this in regards to relatively small stuff, too. For example, in Minagoroshi, when he gets that recommendation to be the auctioneer at the festival, at first he considers the possibility that the villagers are just trying to push a troublesome job onto him, but he realizes that’s a city-dweller’s way of thinking, and that the villagers really are offering him the job because they think he’s the right person for it. So he feels very grateful about it, with a strong desire to live up to everyone’s expectations.
In contrast, there’s Keiichi’s attitude towards the auction in the anime, where he seems more annoyed at having been given the job than anything.
But anyway, this tendency definitely isn’t always a good thing, either. It can make him gullible, and it can make things considerably worse when he has the syndrome.
2) For a long time, I had this theory that Keiichi was subconsciously aware of the existence of the "time loop" and I was recently able to confirm this with Ryukishi07. So that's interesting.