Alright, I'll take a shot here and post my experience with trait-training so far.
I believe that the maximum number of traits should be 5, and you can "cheat" it to go higher (up to 7).
Your pet starts with 3 traits. You can then train it to add 2 more traits, for a total of 5. Now, if you change those 2 traits to something else, you can re-train them to the animal. Allow me to try to make it more simple with examples:
You have a dog. Its initial traits are Genius, Friendly and Loyal. You then teach it Hunter (by praising when it does anything related to the hunting skill) and Playful(by praising when it plays with toys or other pets). The dog will have the Genius, Friendly, Loyal, Hunter and Playful traits. Now you purchase that Lifetime Reward that allows you to change the animal's traits (I forgot the name, but it's that Mid-life Crysis for pets). You change both Hunter and Playful to something else, say Noisy and Neat. The dog now has the Genius, Friendly, Loyal, Noisy and Neat traits. You can then teach Hunter and Playful to the dog again, by doing the same praises you've done before. The dog will then have the 7 traits.