Try using a Gaussian blur on each individual channel (Red, Green and Blue). Use only the amount necessary to remove the grain from each color, then apply an Un-Sharp mask to the image to sharpen up again.