We had a similar issue with DD1 recently which I *think* we've sorted. She started coming into our room not long after we had DD2. At first it was 4am or later and not very often. It gradually became earlier and more often until it was every night, starting at about 11pm. I was too tired from getting up to DD2 so let it slide. The habit stuck and eventually, none of us were getting much sleep.
So what I did (after being suggested on a parenting forum) was explain to her that from now on, she was to sleep in her bed and if she came into our bed/room, I would take her straight back. Honestly, I didnt think she would comprehend what I was saying but what did I have to loose!? DH had to be fully on board with it as if DD2 woke, I needed to feed her so he needed to help with DD1.
The first night I put her to bed with a little chat of 'stay in bed or I bring you back'. It was the usual story, in she came at 11pm so I took her straight back to her bed. I sat with her til she settled (didnt take long luckily as she was pretty dozy), then went back to bed. This happened about 4-5 times, each time straight back. It was vital I didnt just give in so I persevered.
Second night, little chat before bed again. She came in onceat about 1-2am, I took her back and she stayed there the rest of the night.
Third night, little speech, stayed in bed all night. I was speechless!
Since then, Ive had to take her back the odd time. Some of those, Ive just put her in bed and walked away. Some Ive ended up sleeping in her bed with her but overall the difference is amazing! We are all getting much more sleep and a better quality of sleep without being kicked in the head by a toddler
It might not work for everyone but I have heard of loads of others doing the same with great results. I still do the little chat with her every night - I think she understands more than I gave her credit for
Good luck, either way it wont be forever and if him sleeping on a mattress in your room gets the most sleep for everyone (especially with little miss waking lots), it might be best to leave it a little longer, or perhaps even letting him sleep on the mattress but in his room as Kellz suggested