You can avoid this by always specifying extents of same size. Always specify pctincrease = 0 and initial = next. Anyways, To fix this, if you really want to, use export/import(I can think of only this now, maybe someone has any other idea). Like you said, Coaleace wont fix free extents scattered away from each other.

Thanks.