Hi and welcome to the Pool Forum. The only way to lower CYA is through a partial drain and refill. I'm not sure how they measured yours at 300ppm. Testers typically can't differentiate over 100. At any rate, you are getting algae because you aren't keeping the chlorine high enough. The higher the CYA, the higher the chlorine has to be. Take a look at the Best Guess Chlorine chart in my signature below.
I would suggest not using cal-hypo. Your calcium hardness reading is very high and you may end up with cloudy water problems. A better bet for your pool would be to just use plain, unscented household bleach for your chlorine. If you tell us the volume of the pool, we can help you with dose sizes of bleach.
Bookmarks