I think Jessica saw Charles hit Alison over the head (the night she went missing) because he was jealous of her perfect up bringing and Jessica immediately acted like a mother and buried her, a bit like what Jane did in EastEnders for Bobby (protect Charles). Jessica used her sisters house as a safe house for Charles and made the grave for people not to suspect and ultimately give her a fake reason whilst she's kept the house, Jessica loved Charles and didnt want anyone to find out.
Jessica and Charles slowly got fed each up other and this turned Jessica away from Charles and as the whole A case was heating up and she felt she couldn't protect him any longer so wrote him the email saying "I can't help you".
Charles got tired of her and saw his mother as a threat as she could expose him so Charles killed her to protect his identity.