Need advice: Sex life

My husband and I have been married for almost 4 years, in that time we have had sex a total of 54 times (yes, I know it’s stupid to count.) Of these he has initiated maybe 5 times.

I have gained some weight, but I try to take care of myself, I have bought toys, lingerie, tried anything he wants and yet he never wants to have sex with me.

Today I asked him what his favorite position was and said we should practice when we get home... now I am in the bedroom while he reorganizes the kitchen.

WTF? I don’t understand. His every rejection makes my heart hurt. Is it my weight, is it just me? I feel like I have a roommate and not a husband. Should I keep trying, or walk away? I can’t keep doing this