Most regular trainers have 0 IVs in every stat. The more important trainers, like gym leaders, antagonists, and Elite 4, usually have higher IVs. Every Pokemon in gen 3 onwards has a nature, but the trainers' natures all seem to be completely random. I have seen no evidence that stronger trainers' Pokemon have better natures. Also trainers that you battle multiple times, like rivals, sometimes have different natures on the same Pokemon in different battles.
Gen 5 is the first generation where trainers sometimes have more than 0 EVs.
source: clicking different Pokemon games on this page, clicking either "guides" or "resources", and looking for trainer data