The answer is YES. It is possible to point your primary domain to a sub-folder within public_html rather than public_html itself. Here is some information that should allow you to do so yourself.

In order to set up your main domain to use a sub-folder on your hosting account you will need to set up a redirect in the .htaccess file in the public_html folder so that the server knows that any request for your main domain will be redirected to a sub-folder on public_html.

  # .htaccess main domain to subfolder redirect
  # Copy and paste the following code into the .htaccess file
  # in the public_html folder of your hosting account
  # make the changes to the file according to the instructions.

  # Do not change this line.
  RewriteEngine on

  # Change yourdomain.com to be your main domain.
  RewriteCond %{HTTP_HOST} ^(www.)?yourmaindomain.com$

  # Change 'subfolder' to be the folder you will use for your main domain.
  RewriteCond %{REQUEST_URI} !^/subfolder/

  # Don't change this line.
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d

  # Change 'subfolder' to be the folder you will use for your main domain.
  RewriteRule ^(.*)$ /subfolder/$1

  # Change yourdomain.com to be your main domain again.
  # Change 'subfolder' to be the folder you will use for your main domain
  # followed by / then the main file for your site, index.php, index.html, etc.
  RewriteCond %{HTTP_HOST} ^(www.)?yourmaindomain.com$
  RewriteRule ^(/)?$ subfolder/index.php [L]

Place the above code in .htaccess. Also change yourmaindomain.com to your live domain name and subfolder to sub-directory you want to point your main domain.

Reference: