WordPress will provide free hosting with a .wordpress.com domain and you can choose one of or modify many of the existing themes with the online editor (to an extent).
Alternatively you can make a template from scratch but that would require some coding knowledge.
I don't know whether this would be any good for the site you want to host. Your own .com/.co.uk domain is always going to cost though, but it's reasonably priced. I think I paid something like £3 a year for a domain and £2 a month for unlimited hosting.