Just wanted to update and say that I think my theory was right, because she has gone to bed without a problem all week.

We just sat her down and explained to her that bed time is for sleeping, ran through her routine with her (ie, we brush our teeth, say goodnight, hop into bed and put our head on the pillow and read our books, then we go to sleep) we did this over a few days and it seems to be working. When leaving her room I told her firmly that I was not coming back in (I think me going in and out was just escalating the situation). The first two nights she cried for about a minute after I left but has been perfect ever since.

I am sooooo relieved. I couldn't cope with it every night when she's always been such a great sleeper.