I agree 5 years is a long time, but she expected him to live in guilt as he shot her and if she thought if he was living in guilt, he wouldn't move on. That's what shocked her. Its selfish of her to think that but its also human nature.
I think the truth of who shof Kalyani will come out soon. In the live, Reem was about to reveal something but Sehban stopped her and said truth about who shot Kalyani will be revealed soon.
As for why Malhar is keeping quite, I think it is because he knows Anvi's father is dangerous and he probably lied to him that he is Anvi's husband so that's why he is letting them live together. So Malhar can't reveal the truth at this point as the safety of the child is at risk.