There are a few peculiar hidden (GameShark, or memory-trade) only cars.
Some of them crash the game if viewed in certain contexts.
Not all cars take race-mods or "unracemods".
Here's a list I put together... http://www.geocities.com/gt2toxs/gt/diary/2004-01-18.html
Including "hidden" cars, and counting non-racemod as different from racemod, I got 344 cars.
That's 344 "body codes", e.g. vcrbn for the "normal Cerbera" (with vcrbr its race-mod version) (by semi-coincidence the prize Cerbera LM is v-rbr).
That also includes 5 non-car "body-codes", e.g. lcupn ("TROFFY") which can be driven using a GameShark. So I guess that reduces the total to a maximum of 339, really.