Should be easy to do this way - but I haven't tried it though.
Say your cistern is 5 levels high, and there's a short hallway on lvl 5 (top level) with the floodgate that controls the water input and a pressure plate that controls that same floodgate. On the other side of the cistern, there is a crevice on the wall with another pressure plate - which controls both the input floodgate and a floodgate located at lvl 4 which controls the flow of water through the overfill drain.
Now, you'll need to have a lever to control the input floodgate to start the cistern for the first time. Once you do that, water will start flowing in and fill the first 4 levels of the cistern. When it reaches lvl 5 it will activate the control pressure plate on lvl 5 - opening the drain at lvl 4. This will reduce the water lvl on 5, deactivating the plate and thus sending a "close" signal to both the input floodgate and the drain on the lvl 4, stopping the flow of water.
Hmmmh, when I started writing this I thought I had solved the refilling problem as well but I seem to have erred there.
But this setup allows you to have just 1 lever you pull whenever there isn't enough water - you won't risk overflowing your fort since it will automatically stop once full. To be on the safe side, make the drain hallway lead to a large enough area - as wide as your cistern so the water that flows out safely evaporates before going anywhere further.
EDIT: it seems slink beat me to it. But according to wiki, pressure plates will always "open" stuff when activated and "close" them when the weight is removed from them, so you can't make it so that the one on the 0-4 opens the floodgate since it will send the close signal when the water is below 4.