Well, receiving letters can be easy or a little more complicated. For receiving letters, you can set up common events that just use messages to handle letters. But, if you want it to look more like it's written on paper and whatnot, you'll need to write out some scripts for it, develop a simple window and then some arrays to create set letters. If I had access to RMXP, I could do that for you.
But, sending letters... I'm not that skilled with RGSS that I could have any idea if that was possible or not... I'm sure there's a way, but it would be complex.