If the canvas has faded, it's probably a bit late. Canvas should be rinsed regularly with fresh water and with mild soap if the canvas is dirty especially with bird droppings. There are stronger fabric cleaners that may help somewhat. The two things that kill the material are bird droppings and the sun.
You should apply a protectorant regularly to your canvas. I use 303 Aerospace Fabric Guard. The stuff is expensive but I have had good success with it and it really works. If you spray it on outside, pick a calm day or else you will end up treating everybody's boat except your own.
When treated correctly, your canvas should shed water. Spots that absorb water need to be treated.
Your clear plastic is also at risk from sunlight. It needs to be rinsed regularly (avoid most cleaners) and occasionally treated with a UV protectorant. I also like the 303 Aerospace protectorant product. I usually treat my 'glass' once a season. Don't use too much of the product, a liitle is good.
There are many products for your 'glass' out there and everybody has their favorite. One thing for sure is : Never use Rain-X on clear plastic windows...NEVER