You can always switch your hosting to another service provider. When you do so, you must also transfer your domain to next company. Your account should be fully paid before we can release your hosting and domain.
You can host only one domain under one package.
No. A package purchased for one domain can not be transferred to another. This can only be done in corporate package however.
When we sell hosting, we assume you will host with us for a long time. We therefore reduce price on domain and recover this amount through hosting package in the long run.
There is nothing unlimited on earth. A Hosting company which claims to offer something which is not possible, can give you more surprises later on.