You can add "cms_index_index" to user defined do-no-cache route. I'll get back to you on url black list later.
But for your case, the better solution I think is to identify that block, update in config.xml (remember to keep a copy as it will be overridden by upgrade), make it a public cacheable block with TTL 60 secs, something like
Code:
<frontrandom>
<access>public</access>
<blocks> ...</blocks> here is your unique blockname, make sure it's unique name in layout file
<ttl>60</ttl>
</frontrandom>
This way for visitor within 60 secs they all see the same front page, you can make it 5 minutes or 10 minutes if feasible.
and when it regenerates, only this block is being refreshed, instead of the whole page. and 90% of home page visits can be served from cache.
Let me know if this solution works, then we'll update our wiki (Let us know if this is from some extension, what's the extension link/name).