You have to decide what keywords you want to associate your site with, then see where your site ranks when those keywords are typed into a search engine. If you don't like where your site comes up - or even worse - your site doesn't show up at all then you are going to have to work with incorporating those search terms within your site.
I don't agree that you have to have your own domain name in order to appear in the search engines. My own sites are very good examples of that.
So while its not mandatory that you have a domain name it does help but its not absolutely necessary. What you have to do is work on the contents of your site.
My blog is about 4 months old and it is on page 1 of google's search engine results when certain keywords are used. That I accomplished strictly by working on the content of my blog - which is exactly the same thing that you will have to do if you want your site or blog to show up in the search engines.