The retreat and ignore method, my DS2 is now 2.5 and he was just like your DS at the same age, he would do just as your son is doing.
Do not stay their until he falls asleep, move away a couple of feet and ignore him, the screams the crying the hugging and tell him when he's back in his bed he will get a kiss goodnight, then move even further away. Keep it short, no eye contact, to the point, the same each time
You have got to keep on doing this, you must ignore him, he is reassured you are there but you are giving him no attention.
He will damm well hate it and dig his little heels in so hard you will think they are never going to come out. But it's a battle of wills, not a question of you are going to break him. He will also feel better in the end. Christ I'd like someone to lie by my bed and stroke my hair before I go to sleep!
We put a gate on his door and would sit outside it, whilst he screamed bloody blue murder at us, we ignored him, then went back in, put him in bed and said night night, no joke, on the 1st night we did this 73 times, I was in tears and pieces, but it did reduce night after night, it was FUCKING HARD, but worth it.
You have got to comit to doing it together, not giving in. DS2 now goes to bed so well, story, kiss, night light on and off we go our of tthe door, he falls asleep, does not get out his bed.
I have video of him going ballistic and if we can get our 2 year old from that to being great then YOU CAN DO IT TOO!
I know all kids are different, but you are pregnant and you have to do something.
This is what worked for us, it stopped me going insane. If he sleeps better he might not be so cranky in the day, 2 is s hard age, the energy is never ending, my DS2 is like a whirrling durvish (spelling?) all day long, even if I shut my eyes for a sec he comes up and shouts 'WAKE UP MUMMY!' i want to shout back 'SOD OFF!'
Try it please. Good luck.