I agree that their requests are excessive but I really don’t think you can add the survey visit into the same category.
The vast majorities of house-buyers request a survey and the length of time depends on the surveyor, the house, and what he feels he needs to check.
The fact that the surveyor is a friend of theirs is irrelevant- some surveys do take a while. We had a level 3 survey on the house we bought two years ago and IIRC, the seller told me he was here for more than 6 hours!!
I think an in depth survey is a completely different matter to potential buyers taking 2 hours per visit.
When we bought, we offered after one 15 min visit and were in a bidding war with sealed bids. We had another visit post-acceptance for about 30 mins when the seller was home (he was lovely). The house was sold as a fixer-upper and we wanted to convert to an annexe and build an extension, which the seller knew (and was one of the reasons he picked us). He was happy for the EA to let us in (while he was away with work)with our builder and architect to measure up for quotes. I would have understood if he’d refused though and I felt a bit cheeky asking but he was so accommodating, I was really grateful.
On the flip side, selling our house they had one single visit before offer, roughly 15 mins. Then a fairly basic 2-hour survey (small house though) and that was it. No queries, no requests to measure anything, just radio silence until completion! I’ve never known a buyer ask for so little, I thought it was going to fall through!
So back to your house, as it stands, they’ve had three visits. Very lengthy visits. And they want to visit again with a builder. Personally I’d be ok with that because they might need the builder’s quote to be sure about proceeding. Without it they might get the wobbles and pull out. But no more visits after that. You can just say it’s too disruptive which is fair enough. Your EA should be managing this - he’s your agent, not theirs, that’s what you pay him for.
I completely get that another visit is a faff but as they have a specific request - the builder - I’d let them go ahead but then draw the line. Oh, and set a time limit on the visit. A builder won’t need more than an hour to get what he needs.