|Hey Sarosh. I'll try to best answer your questions and I'm happy to assist.|
1.) If you didn't manually submit the website, it would take until a search robot follows a link from another website to yours. It might have been days, months, years, or never, so it is a good thing you submitted it yourself. I strongly suggest creating a site map in .xml or .xml.gz format and submitting that to Google Webmaster Tools. Search engines love site maps, and it will help the robot crawl all your web pages. You can even suggest to the robot how frequently to crawl each page.
If you were using a CMS like WordPress, you could use a plugin like "Google XML Sitemaps" which will automatically create them for you.
2,) I've seen websites where 'www' was the root directory and websites where 'public_html' was the root, but I've never seen one be a sub directory of the other. I think you'll be better off asking your web host that question.
3.) I've never encountered this problem with PHP pages, but I'd say it has something to do with the duplicates you mentioned in the previous question.
4.) The index.php page is a file that you identify as the homepage. Google recognizes it and removes the /index.php from the search page. If you searched for your site as www.tithienterprises.com your site comes up at the top of the SERP-Search Engine Result Page.
If you created a page called index.htm, you'd probably see that page as your homepage instead of the index.php. Web servers have a list of priorities to identify which file should be the homepage. The file names are usually 'index' or 'default' and the extensions typically include .htm .html .shtml .php. If you wanted both an index.htm and index.php, you could use the .htaccess file to specify which one you want as the homepage.
In your scenario, you searched for a specific page (portfolio.php) and then searched for the homepage.
5.) I don't see a problem with that because it returns valid HTML, so search robots will interpret it fine. You did forget to close the meta tag, so make sure you do that.
<?php echo "<meta name=\"keywords\" content=\".. various keywords ..\" /> "; ?>
The method I use is to enclose PHP statements in apostrophes and HTML attributes in quotes. So I would have wrote it to look like this:
<?php echo '<meta name="keywords" content=".. various keywords .." /> '; ?>
You could have also closed the PHP statement, wrote the HTML line, and then reopened the PHP statement:
yada yada ?><meta name="keywords" content=".. various keywords .." /><?php yada yada
It's just personal preference and development style.
It's worth noting that Google is no longer using meta keywords to improve your ranking on SERPs. For years, people have been abusing meta keywords to improve rankings so Google omitted that factor.
I still (and properly) use meta keywords on my site for those not searching on Google, but don't spend too much time modifying them. The page content is far more important, and search engines recognize that.
Good luck with the Tithi Enterprises project and your future web development endeavors. I love learning web dev, so you're welcome to pick my brain anytime.
Apologies if I don't respond to your reply immediately. I don't check this site daily.