This may have to do with the way LaTeX handles Figures and text on the same space.
In particular, LaTeX will dedicate an entire page to figures if the minimum amount of text on a page cannot be met.
You can use the following three commands in your preamble (Note there may be better ways) to adjust this. I believe that these use the setspace package, I can't confirm this as I'm pulling the examples out of an old document.
% To be confirmed that it requires the setspace package, try with and without.
% Let top 85% of a page contain a figure
% Default amount of minimum text on page (Set to 10%)
% Only place figures by themselves if they take up more than 75% of the page
Hope this helps you but you may need to experiment.
In addition, there are the obvious usual caveats when you are changing default behaviour that you are responsible etc.