Diamataceous earth, cinnamon, and hydrogen peroxide all work to kill the larvae, but letting the soil dry out is essential.
Sticky yellow traps catch adult gnats.
Constantly too wet topsoil is heaven for fungus gnats, so you are watering too often and this is why you have them.
Basically they are feeding on rotting roots that have died due to being drowned.
Googling "natural control of fungus gnats" should give you many ideas.
Hope this helps, Organoman.