Don't up-version the assets.
The assets were not "faulty" for the version they were created for, or they were faulty and that version of Trainz didn't see the errors. Let me 'splain.
Up until TRS2006, Trainz had little if any error reporting and faulty assets could be installed without warning. For the most part, TRS2004 and below would chug along okay. While these assets appeared to work okay, their internal unreported errors, caused internal problems that could cause the program to crash suddenly, or crash on exit. These hidden errors also caused substantial performance problems due to the program having to parse through the errors and skip over them in order to read and use the parts that worked. Some of the errors were simple typographical errors in the config.txt files.
It was common to see such errors as missing quotes, or tabs used to space out the text, causing weird errors later on in TRS2006 and up and assets to load slowly. Other outright typos were common such as desicription, or local spellings such as colour instead of color, among many other things. Other errors were missing textures, or wrong-sized textures. While the asset may load up, there were blank spots, or the assets would load very slowly due to the textures being too big. These are only some examples of what was there for Trainz to slag and slug through to operate.
When TRS2006 came out, error checking was introduced. This was pretty calm and mild compared to what we have today, but it was the start of what was to come later. As subsequent versions of Trainz came out, the error catching and reporting became stricter, causing what appeared to be so-called good assets now becoming faulty.
To allow older assets to run in the modern versions of Trainz, such as TANE, TRS2019, TRS2022, and whatever is come, older assets are allowed to load at the version they were created at without errors unless they really have something that's really, really bad. There are also methods that are deprecated and no longer supported in new builds but are ignored in older builds. By updating the asset to a new build version, these older methods now cause a fault. The reverse is also true if a new build is down-versioned. There are things that new builds are capable of doing that are out of the question for older builds causing outright errors there as well.
If you can tell us what the errors are, perhaps we can help you. The older assets, though have to remain at the version they were created in, otherwise, they can fail to load.