It is possible that the color has changed with time but it's more likely just a surface film. A product like 'Magic Eraser' acts as a mild abrasive and takes off the outside layer of material and get back the original color. As it is abrasive it can damage the surface if used too often. I don't use it on my boat unless there is a specific small stain.
Most vinyl and leather cleaners have pretty good surfactants to lift a film but they are helped a great deal by using a nylon scrub brush that you can get almost anywhere for your house. I usually use 'Starbrite' brand as it is inexpensive and rinses away easily. If you are not cleaning on the water, you could use something like Malco or Totally Awesome which are stronger but not great for the ecosystem. Whatever you use, let it sit on the surface after application for a minute or two and them use the brush. Rinse it well.