I would definitely get rid of the undergravel (UG) filter. They will trap waste underneath and cause nitrates to increase.
Also, do you have crushed coral on the bottom or sand? If CC, I also suggest you remove that and go with live sand if you decide to remove the UG filter.
I ran a 20 gallon tank for about 6-7 months with CC and a UG filter and things went fairly well. But the last month or two I started getting hair algae really bad. Then I upgraded to a 72 gallon and used live sand instead. It's been running for about 4-5 months now and I don't really have a problem with algae. I still get a little here and there, but it's not the threat it was before. It actually caused many corals to die by choking them out.