My 2yo son slept in a sleeping bag (see image below) until around 1½ years old, then he didn't like that anymore so we switched to using a blanket. He moves around so much while sleeping that the blanket usually isn't covering him at all. This hasn't been a problem so far during summer, but now the cold season is coming and we think he'll get too cold at night. He's already rather cold in the mornings -- with cold hands and cold feet -- so the current mode of operation won't do.
We're not tucking him in "English style" with the blanket going under the mattress, but average "European style" where it's just draped over him. He's very active and dislikes being restrained, so "English style" is not an option.
I've learned to stay underneath my blanket during sleep, but I have no recollection how I learned it -- can we somehow "teach" him, or does it only come naturally with age? How can we keep him under the blanket?
What we're already trying:
We are re-covering him several times during the evening until we go to bed ourselves, and sometimes again during the night if we're up for any reason.
We are dressing him in warmer pajamas and socks to keep him from getting cold at night, but we can't comfortably dress him warm enough in winter. If we dress him warmly (so that he wouldn't become too cold without the blanket) then the blanket makes him too warm and he wakes in a sweat, so we avoid that.
We are trying to find a sleeping bag that fits his current size (92cm) but seem to be rare in these sizes; apparently they're only popular for infants but not so for toddlers. Even if we find one, there's a risk that he'll reject it, just like he ended up doing half a year ago.