I've set up a plane with a material that changes color from red to grey over the life of a particle. I also set up a particle emitter that's particles are duplicates of the plane. The color of the particles change in my material viewmode, but when rendering or in the rendering viewmode it just stays the first color. I've attached a screenshot and a .blend.
The problem you are facing is mentioned on the manual page for the particle info node:
This node currently only supports parent particles, info from child particles is not available.
Because you are only rendering child particles rather than the parents, you encounter this issue. If you Shift+Ctrl click this node to see all of its outputs, you will see that they all show up black in the rendered mode of the viewport. IDK why exactly it is showing up correctly in the viewport in material mode...
To fix it, you obviously just switch to only using parent particles in the particle system, or find some alternate way to achieve the effect you are seeking.