I have found the solution below which I think meets all the requirements.
S1 S2 S3 S4 S5 S6 S7 S8 S9 S10
R1 ( 1 6 24) (23 15 17) (22 19 10) (27 18 2) (14 29 25) (13 5 7) ( 3 16 12) (11 9 30) (20 26 8) (21 4 28)
R2 ( 2 7 25) (24 11 18) (23 20 6) (28 19 3) (15 30 21) (14 1 8) ( 4 17 13) (12 10 26) (16 27 9) (22 5 29)
R3 ( 3 8 21) (25 12 19) (24 16 7) (29 20 4) (11 26 22) (15 2 9) ( 5 18 14) (13 6 27) (17 28 10) (23 1 30)
R4 ( 4 9 22) (21 13 20) (25 17 8) (30 16 5) (12 27 23) (11 3 10) ( 1 19 15) (14 7 28) (18 29 6) (24 2 26)
R5 ( 5 10 23) (22 14 16) (21 18 9) (26 17 1) (13 28 24) (12 4 6) ( 2 20 11) (15 8 29) (19 30 7) (25 3 27)
R6 (19 29 13) ( 2 30 10) (15 27 5) (25 6 11) ( 4 8 18) (20 28 22) (23 7 26) (21 16 1) (24 14 3) ( 9 17 12)
R7 (20 30 14) ( 3 26 6) (11 28 1) (21 7 12) ( 5 9 19) (16 29 23) (24 8 27) (22 17 2) (25 15 4) (10 18 13)
R8 (16 26 15) ( 4 27 7) (12 29 2) (22 8 13) ( 1 10 20) (17 30 24) (25 9 28) (23 18 3) (21 11 5) ( 6 19 14)
R9 (17 27 11) ( 5 28 8) (13 30 3) (23 9 14) ( 2 6 16) (18 26 25) (21 10 29) (24 19 4) (22 12 1) ( 7 20 15)
R10 (18 28 12) ( 1 29 9) (14 26 4) (24 10 15) ( 3 7 17) (19 27 21) (22 6 30) (25 20 5) (23 13 2) ( 8 16 11)
It also has a interesting property that you might be able to make use of. If the 30 teams are divided into 6 divisions, 1-5 in division 1, 6-10 in division 2,..., 26-30 in division 6, then all of the competition is interdivisional. Hope that helps.