If i recall from the 2019 cars - it's been a while since i checked and I don't have a 2020 yet to test - you should be able to go about 27 miles before you run of green bars. This assumes you can keep all 4 wheels between the white lines at all times. I don't think you'll be able to complete 9 laps on any of the tracks before running out of green bars.
Try running 2 monzas then 1 spa.
you might also try 1 monza then 2 spas
If you can stay on the track enough ( all 4 wheels) try silverstione, spa, spa
to mix it up - monza, silverstone, spa
How far can you go in the Spa endurance? if more than 3 laps (13.1 miles) then try 2 monzas then Spa endurance.
==
EDIT: the most optimal solution to maximzie XP per service interval is probably to run exactly 27 miles in spa endurance, keeping all 4 wheels on the track at all times. Race offline so you only get a 6.4 mile (max) goal then break it into 2 or 3 races. 27 miles at Spa should pay about 1,700 or 1,800 XP and you should have about 1 green bar left. Once you've done this, the last step would be to run you highest-XP paying race. If you can do more than 3 laps in spa endurance, then this is your choice. If you can't complete 3 laps inthe endurance race, then run the cup.
==
Lots of choices - most importantly, don't make it about farming. Mske it about racing. Have fun with it. If it were me, I'd try a different 3-race combination each time. Differences of a couple hundred XP really are of no consequence. If you earn 2,100 today and 1,950 tomorrow, so what...