Id fetch a few toys down ready for when they come so they dont need to go up there and just say that ds has just spent a long time tidying his room and wants go keep it tidy.I think my ds woukd be really upset with me if he told me he did want them in his room and I kept letting them.
I think you need to speak to your Dad quietly about it first and try and get him on side. Say that you don't want to cause trouble and you love seeing the boys, but there have been a couple of occasions where they've/one of them (it might only be the 5 year old not being careful enough?) broken a couple of DS's things and not said anything and that it's upsetting your DS. Ask for his support in getting them to bring things downstairs.
See if this works....hopefully it will, if not you're going to have to tackle it directly with the boys.
My dad has a new family and has 2 boys aged 9 &5. We get on really well and visit each other's houses at least twice a week.
The issue is when my dad comes with the 2 boys when my ds aged 10 isn't home. The lads go up to his room and keep breaking his stuff & leaving it in a mess. Ds has asked me to not let them go in there any more.
My dad lets my son go into their rooms when we visit him & they are out, ds tidies up & wouldn't break anything, if he did he would come & say.
They came the other day & I asked them to go get a toy & bring it down. They agreed but did not, they stayed in his room & broke one of his trains. That was when ds asked me to stop them.
I don't want to cause offense but my ds is fully entitled to request this. So, how do I word it?