Regarding #2, you can configure those under Settings>Illuminated Cloud on the Validation & Deployment tab. You can choose which API should be used when sending each type of metadata to the server based on certain events, set the on-edit delay for dry run validation of the code, etc.
As for the difference between modules, it's not so much the placement of the .iml file as it is the type. Illuminated Cloud has its own module type as part of the plugin, and it uses information stored in that module type to operate. By default IntelliJ IDEA will create a Java-type module if you create a project from VCS or similar, so in those cases you have to create your own Illuminated Cloud module to replace the one that IntelliJ IDEA created for you. I'm looking at ways to simplify this common flow to avoid exactly this type of issue.
Hopefully that helps. Let me know if not!