I haven't read every post so this may have been posted but here is my 2c worth.
I think there could be 5 random choices (not 4)
1. Car 1
2. Car 2
3. Car 3
4. Car 4
5. Your choice.
If it lands on 5 you choose the car.
OR
It gives you credits eg in the roadster enduro you get 50,000 additional credits which you can put towards the purchase of an F1. Maybe the price could be the second hand price if you buy it there and then or it is unlocked to buy at full price later.
I don't think it should be based on performance and here is why.
I am near the end of the game and want to win all prize cars. This includes the Subaru Impreza Sedan WRX STi that you win in the Professional Gran Turismo All Stars. You cannot get this version of the Imprezza any other way. It would clearly be the lowest ranked prize car for that series. Do I need to guess how many prangs I need to do to win it. Do I need to make sure I win by only 1 second to win it. That would suck. I prefer the save game method on the series.
I agree that it is a bit tough in the endurance races but most cars there except F1 can be bought or won elsewhere. I also think it is quite generous in its F1 allocation. I know other people have other experiences but I ran the Super Speedway in an Altezza LM Car and won by 19 laps and got the F1 car. I then did it in the F1 car and mucked around to still win by 19 laps and got another F1 car. I then did it in the Escudo and mucked around for a 19 lap win and won the Clio Race Car. Pity that after the first race I was going for the Tickford. In the end I had won enough money to buy it anyway.
Here is another idea. If you win it with a certain class car eg in the Super Speedway you race against Mine's Skyline, RUF 3400S, Spoon S2000, Mugen S2000, Celica TRD Sports M, Motor Sport Elise, and Mine's Lancer Evolution. If you use one of these it is a free choice of prize car. Use any other car and it is random.
Or:
Use one of the cars you race against or similar HP-------prize F1 or choice
Use fully modded road car-------prize LM car
Use LM car--------prize decent road car/JGTC
Use LM/F1---------prize limited edition road car
Or:
You specify from a short list what car you want to win and the game has a scenario in order to win it. eg Super Speedway endurance - if you want an F1 car the scenario may be use any car you like but win by 20 laps.
On other tracks one of the scenarios may be limited pit stops or even compulsory pit stops eg trial mountain, non tuned car, must pit every 10 laps or can only pit twice.
Or:
Have one prize for each endurance race but have more than one endurance for each track eg
Trial Mountain
Endurance 1 - non tuned - prize car - Tuscan Speed 12
Endurance 2 - all LM Cars - prize car - F1 car
Endurance 3 - Any nissan you like - prize car - Penzzoil Nismo GTR
Endurance 4 - Rally cars - prize car - Lancia rally car
Speedway
Endurance 1 - Any Toyota - prize car - Castrol Tom's Supra
Endurance 2 - non tuned - prize car - GT40
Endurance 3 - LM Cars - Prize car - F1
Endurance 4 - 4 cylinders - prize car Beetle Cup car
It may be best to limit the way you can get cars eg currently you can buy the Penzoil Nismo GTR. Maybe make it you can only win it and the same with other prize cars ie a car is either a prize car or for sale but not both.
Off topic I would also like to see class races on the rally tracks eg FF, FR, MR, 4WD non rally, non tuned, lightweight etc. This would make better use of the rally tracks and make the game even longer.