If the pools are called J1,J2,A1,A2 & A3, then I would start by constructing a plan that shows which court is assigned to which pool over the 8 rounds of play.
J1 A1 A2 A3
J2 A1 A2 A3
J1 J2 A1 A2
J1 J2 A3 A1
J1 J2 A2 A3
J1 J2 A1 A2
J1 J2 A3 A1
-- -- A2 A3
Then call the 4 teams in one pool A,B,C & D, and take the relevant 6 slots from the plan above in time order, and assign them to games as follows:
AB
CD
AC
BD
AD
BC
For example teams A & B in pool J1 play in round 1, while teams C & D in pool J1 play in round 3.
I can't say that this is optimal, but I think it will be close. Each junior team will have one game in rounds 1-3, one game in rounds 4-5, and one game in rounds 6-7. While each adult team will have one game in rounds 1-2, one game in rounds 3-5, and one game in rounds 6-8.
Hope that helps.