First of all Johnson has not become white in Halo 3 and second all of the changes from Halo 2 to Halo 3 can easily be explained through each of the characters reequiping themselves. Like the Chief could have had to replace his gauntlets after a fight onboard Truth's ship. His gauntlets are small enough that it isnt beyond reason to say he had spare gauntlets with him. Changing his ENTIRE suit however and doing this while in stasis in the vacuum of space is a bit different. The Arbiter probably returned to his fleet to re-educate the Elites about the humans and re equip his armor with the additions you see in Halo 3. Same could be said for Rtas and his shoulder pads. Again the Chief however is a bit more restricted by being alone in cryo in deep space so he should have virtually no changes to his armor.