1) Yes you can use fantastico to setup your primary domain but if you had a look in the video 0.b - slide 21-24, we recommend to install the master in another directory that is not in the "primary domain" root directory.
The idea is to keep the "primary domain" root directory as clean as possible and to never install subdomains or addon domain in this primary directory.
So Yes you can do but we do not recommend it.
In general we recommend to create a subdomain like master.domain.com that is located in the directory /subdomains/master/public_html
2) In general, you can not change the primary domain directory.
I am surprise that you mentioned a primary domain in "domain1.com/public_http".
If you are using cPanel, the expected primary domain directory is "/public_html"
3) When creating an Addon Domain in cPanel, we recommend to have the "/domains/domain2.com/public_html"
When this is a subdomain of a primary domain, we recommend using "/subdomains/slave1/public_html"
If subdomain of an AddOn domain then "/domains/domain2.com/subdomains/slave1/public_html"
Review video 0.b slide 21-24
www.jms2win.com/en/tutorial#jms12x-0b
4) Why do you want to create a slave2 into a subdirectory of the slave1.
Perhaps you want to do that for a domain like "slave2.slave1.domain1.com"
In this case, we recommend "/domains/domain1.com/subdomains/slave1/subdomains/slave2/public_html"
Yes you can create subdirectories.
The difference with our rule is that subdomain or domain always have a specific directory that is never shared with the other domain or subdomain.
The only case where the subdirectories are like you described is when you have a URL with a subdirectory (ie.
www.domain1.com/slave1/slave2)
5) It is possible to create dynamically the DB and the MySQL user when you provide the MySQL Root login into the "multisites.cfg.php" configuration file.
See user manual page 14.