Shannon is 39. Becca is 23. Shannon would have been 16 when she gave birth to Becca. Shannon met Trevor AFTER she finished high school and started working. Trevor is definitely Lilly's father but can't be Becca's because she was born before Shannon met Trevor. In her bio, Becca was never close with Trevor and she wasn't bothered by him leaving. She would have most likely have noticed Trevor was not in her baby pictures until he suddenly appeared when she was a toddler. She would have been told Trevor is her father, but Becca is very smart, she knew the truth.
As for alimony, Shannon's parents suddenly shipped her off to live with her aunt when she was in high school. Shannon was still dating Frank the day before she left. It is most likely her parents were hiding her pregnancy by sending her to live with her aunt, away from those who know her. Seeking alimony would have just brought attention to the pregnancy, and that is what they wanted to avoid. Also, if Shannon was cheating on Frank, she wouldn't know if Frank or another guy was the father. Then, she met Trevor, and he stepped up as father (for a while) so she didn't need to go after alimony. Why Shannon never did a DNA test on Becca hasn't been answered yet. Though, given Lilly's abandonment issues, finding out her sister is her half sister wouldn't go down well, so Shannon probably just didn't bother.