I've been with my partner for almost 4 years and we have a 2 year old son. I'm 20 and he is 22, up until October last year our sex life has been good, he used to want to have sex and help me orgasm but now he climbs on once a month, maybe twice, finishes in under 5 minutes then climbs off and falls asleep. (there is no foreplay, no kissing, no passion) and he leaves me to "finish" myself off.

He works a lot and when he comes home from work he plays his xbox all afternoon, barely paying any attention to me or our son. I don't understand what's going on anymore with him. I try to talk to him about all this but he just gets so mad and we have a huge fight. I understand working so much could be damaging his libido, but if he has time to rack his brain cells at the stupid xbox, he has time for me!

I feel bad that sexual satisfaction means something to me in this relationship but it does I feel deprived, yet he cums every time and I think it's very selfish of him.
I mean we are only young and I feel like he has the libido of an old man, I feel really used by him.
We love each other, we say it all the time, we used to get along really well.

He likes to cuddle up to me in bed, or cuddle me in the shower in the morning before our son gets up and something a little sexy starts, he gets out, our passion or excitement stops before it could escalate into something like he isn't attracted to me anymore.

I don't get it, I wonder if he is cheating on me and would feel guilty to the other woman for sleeping with me?

What can I do to spice things up between us?
I've tried, sexy outfits, dressing up really nice for when he gets home, sleeping nude, talking dirty, sending naughty messages to him while hes at work about what I wanna do to him or photos...I've bought adult games. I'm at a loss here.
I really didn't think at the age of 20 I'd be asking for help with my sex life but I NEED SOME HELP IM GOING INSANE!!
I love him more than anything and don't want to leave him because of terrible sex.