It turns out this was just as easy as I thought it ought to be - if you just start out the right way. Definining
setTwo {
classPath += setOne.runtimeClasspath // instead of setOne.output
}
solves the problem.
UPDATE:
It seems even better to do it among the dependencies, where one can do
dependencies {
setTwo sourceSets.setOne.output
}
and get it working.