They don't get space for free :|, that is the simple reason.
A good hosting server costs you around 180-250USD (excellent working 500+USD) a month with 250GB hard disk, 2000GB bandwidth. Thats the reason, Normally free server comes online for testing purpose, 1st they give away free accounts, to test their services and problems they can face in future with paid service. So thats the reason 80% free host shutdown their service with in 3-4 months.
So normally host offers space up to 500 mb, and especially asks you to makes posts for hosting are more reliable than these no-ads free hosts.