There are about 5 parameters that adjust latex's pickiness when doing page layout with figures. Things like proportion of the page taken up by a figure. Tweak these and these problems should mostly go away. You may still need to move a figure ahead of a block of ordinary text (only do it at the final edit!) but you won't be tearing your hair out.