The only major concern about free hosting I can think of is the ads they force onto your sites (depending on how the links are coded -- i.e. if they're forcing backlinks to malicious sites) and also the domain (e.g. yourname.com is better than yourname.freehost.com) which although not necessarily a technical flaw, to the average visitor it looks more professional.
I also think that with Google Apps & Webmaster tools, you won't be able to sign up unless you have your own domain. I'm fairly sure that free hosts don't allow your own domain -- however Wordpress.com and Tumblr do allow you to assign domains to your accounts.
Since hosting is so cheap today, it might be worth getting even one of the $4/month plans just because from experience I haven't touched a free web host since the early 2000's because free hosts tend to place huge limitations.
edit just to clarify about the Google Apps/Webmaster config, having a domain is not a requirement to be indexed by any search engine. I'm just saying if you wanted to access the extra features, having your own domain is must.
Also, if you go with a paid host, you do have more leeway with your code and layout/features meaning that you could add more SEO friendly capabilities to your site, which might not be permitted or blocked by the free host.
Still, Google's indexing can take a couple of weeks to pickup your site at first, so patience always is key. Afterwards however the indexing varies based on a ton of factors such as update frequency (i.e. a blog gets searched more than a static site), reputation, content type, and more.