I made a similar setup for our previous boat, an O'Day 23. For your's, I recommend putting a strip of teak or other hardwood the full width on the inside at the bottom. Maybe 0.5" or so high, an inch wide. This will do three things: First it will brace the bottom of the doorway in case someone should try to break in. (I put a door slide bolt vertically on the inside of the outer door to lock the bottom.) Second it will brace the door in case you take a wave or something over the stern. Thirdly it will block the draft and rain water from entering that way.
If there is not a strip of wood on the outside of the doors, (Batten) add one. It will make you have to close one side before the other, but it will block the wind and rain from entering at the vertical gap where the doors meet.
I added a piece of aluminum channel that would span the thickness of the door panels to brace the top of the doors against a forced entry. A small cutout allowed it to clear the block there the hasp was mounted.
As far as the top of the companionway, that is what it is. I would NOT do the expanding foam idea. It expands a LOT and will stick very tenaciously to everything it touches. (You, your clothes, anything you did not reach with the 'lubricant', etc.) The backer rod is a better idea, or just stuff some rags or plastic shopping bags up there if the draft is too bad.
Something else you may want to consider: On our 1985 C-30 mk I, the hatch sticks and can be hard to open from the inside. I took the teak trim off the outside by unscrewing it from the inside and added a large 8" stainless drawer pull to the inside. Used round head screws on washers to mount it, so I had to mill out a little wood on the trim piece to fit it with my Dremel. Now at least we have something to pull on to open it when it is sticks.