At a quick glance ...

Yes, dust that thing with compressed air! Dust can really mess with your machine and can greatly diminish the life of your system.

I clean mine regularly to avoid dust build up which makes bigger clean up jobs not needed. A stitch in time as they say.

Also if you have your comp in an environment that is prone to dust and such like an older house or a home with pets, it might be a good idea to invest in some vent dust covers to help mitigate the dust being pulled into your system somewhat. It lessens the airflow.from your intake fans a bit but I feel it is a worthy trade off to not have dust choking your system. You only really need the covers for intake vents.

Asides from that the set up is fairly sound. Exhaust at the top and back with intake at the front and bottom, with a balance of intake and exhaust.
As it appears your GPU is not an "ambient" cooled one like a lot of the newer models and pulls air in and vents out the back, extra stuff like a side panel fan and extra exhaust fan for it isn't really needed.

The only thing I might suggest is moving your CPU heatsink fan from the back where it is pulling air through the heatsink to the front where it is blowing air through the heatsink.
You have an exhaust fan right there behind it so you have a fan already moving hot air away from the heatsink so you will probably get better results by spreading out those two fans by moving the one mounted to the heatsink to the front of it.

Essentially when thinking of airflow in a case, you want to create channels of air that have cool air flow in to the case through intakes, get directed to the components that need cooling and then pushed out, sort of like a stream. Also you then need to factor in that hot air rises and that air loses velocity and direction quickly, especially if there are obstructions like lots of cables or a HDD cage.

That would be my basic advice as far as cooling without going into things more hardcore like getting all new specialized fans and what not.