High phosphates are the primary cause, but high nitrates also contribute. Cyanobacteria do not need much light.
I'm on well water in a subdivision built on old farmland. My water is occasionally high in phosphates and nitrates, and phosphate levels and subsequent cyanobacteria blooms seemed to come in conjunction with wet weather. Makes sense, since water drains into the aquifer, taking phosphates and nitrates accumulated in the ground from decades of farming with it. I had this problem with almost every tank for over a year initially, until either algae or plants became established. Needless to say, I'm a little less meticulous about algae than I used to be when I lived in town, especially in my non-planted, cichlid tanks.
Erythromycin will kill it, and is good for the occasional or one time outbreak. But since this a continouos problem in this tank, it doesn't address the underlying problem. Remove the source of phosphates and remove the problem, but that may not be possible. Since I have no control over my water, my solutions have been either to plant hardy, fast-growing plants like cabomba and hornwort that outcompete cyanobacteria for nutrients, to let algae grow and let my African cichlids or other algae eating fish graze it, to reduce the photoperiod on my tanks, or some combination of the three. Once the bulk of the nutrients is used up, water changes only add enough to support what is growing, rather than promoting a blossom of cyanobacteria. I've not had an outbreak in well over a year now, running 50 tanks.
Interestingly, cyanobacteria has been linked to the "zombie" alligators of Lake Griffin, Florida. Run off from muck farms increased phosphate levels in the lake, promoting cyanobacteria growth, which in turn out-competed higher plants and algae. Few fish eat the stuff, so most fish species declined in the lake. But gizzard shad do eat cyanobacteria. Shad produce high amounts of thiaminase, which breaks down thiamine (vitamin B1). As the shad become more populous and other species declined, the gators ate more shad. The unbalanced diet caused the gators to take in more thiaminase, which prevented the alligators from getting the proper amount of thiamine. The gators suffered brain damage due to malnutrition, causing lethargy and paralysis. And thats the recipe for "zombie" gators.
So the moral of the story is don't eat BGA or you will turn into a zombie.