I like the idea someone gave about going over and sleeping on his side of the bed if there is free space there. OR perhaps you could switch sides and have him start out on the side he ends up on to see if that helps? Or you might try a toddler bed rail to keep him in place. would take up less of the bed than a pillow. Maybe one with a sail to go under him as an anchor, and then set it to divide the bed in the range near his mid-back and butt area?
We just transitioned our 2.5 year old from crib to twin bed. The first few naps and nights of sleep were tough because she was so excited about the bed and all the space. She rolled around while I stared at the monitor fearing she’d fall off (we put her crib mattress on the floor just in case). She’s usually a great sleeper but it took her over 3 hours to finally settle down the first night. We bought these bumpers on Amazon (we only use one for the edge of the bed that’s not against the wall) and it makes for a very cozy and comfy sleeping zone and I think it makes he feel secure - My Happy Tot Portable Bed Rails... https://www.amazon.com/dp/B0813RH986?ref=ppx_pop_mob_ap_share