mmm tricky... my first child didnt move to a big bed until the day he turned 3yrs... up til then he has in the port cot... Maybe your dd needs the cot/portacot still??? Then she cant run into you and if you dont come straight away she may fall asleep again as you said?

At 4am:
Maybe do the 'its not time for play yet it still sleep time and take her back to bed' and keep putting her back til about 6am .... This will eventually teach her that when the house is quiet it is sleep quite time in her room.... when mum/dad get up thats when you can get up... kwim

Im still forcing a 7 45 am get up time and NO earlier for my ds who is 9yrs SO i hear you!!!

cheers