We have a ten-year visa for the USA, which allows us to stay for 6 months at a time. If we stay for 3 months, can we return to the US 6 months later for a further 3 months? On entering the USA do we have to have a return ticket?
You misunderstand what a 10 year/6 month visa means.
It doesn't mean that you can stay for a total of 6 months, but that you can stay for 6 months per visit. There is no hard limit on the total time you can stay with such a visa, but if you ended up spending much of your time here you would likely get some questions from immigration about your intent--that's a tourist visa, not a residence visa.
I currently hold a 10-year/60 day visa for China--on which I have spent roughly 80 days in China by now and I wouldn't be surprised if I'm up to 250+ by the time it expires.
As for a return ticket--it's required but often not asked for. Since you need a visa in the first place you're already starting out with a strike against you (if you were from a country considered low risk you would almost certainly be traveling on an ESTA rather than a visa) so I would be careful to comply with the rules.