You could host your main content at hostgator, and simply host the files elsewhere.
You have another issue. You need to be aware of any copyright rules that you could be breaching by allowing users to upload content. This is something that you need to consider. Will uploads by users be automatic, or will you or admin check them one by one?
If any of the content breaches copyright, you cannot shrug this off, it is a serious crime. Please read this: (website owner arrested simply for linking to other websites that contained copyrighted material)
For dedicated servers:
1. you need a control panel to manage it. I recommend cpanel, it is what hostgator uses, so for parts of it, you will be familiar with it. Cpanel costs more for dedicated then it does for a VPS
2. you need someone to manage it and take care of server security. It is great if you learn, but better to pay someone to do this for you. Often they can monitor it, so any problems they log in to fix it before it goes offline.
3. you need a backup solution. A simple raid setup is needed, but costs more then the standard default. A backup solution for 1TB of data, will cost you dearly.
These are basic things to ask BEFORE starting.
I will give a shout out to dedi-spec. Used them before, can custom build you a cheap server with raid setup with massive HDD.
But you have a potential high cost per month, potential headaches in policing the content that users upload. So please do your business plan, before you go ahead.
Regarding unlimited shared hosts:
I used to be with hostgator years ago, and I am here to tell you that there is an extremely high chance that they will suspend you for being an “abuser”. I was told clearly by staff, that an image hosting site, (such as a wallpaper site), was not allowed. Even if it was quite small (was well and truly under 1gb of storage at the time), yet I had to move it to a VPS. Still, shared environment was suitable for initial setup and testing the script, but long term, you cannot rely on shared hosting for this.
TOS are often written to be strict, so they can legally deal with people who are “abusers”. For example, While you have “unlimited”, lets say you use only 10mb of storage (which is nothing), but have 2 cpanel backups in your account, at any one time, even though you are not really using any of the resources, they have the right to suspend, and or terminate you for breaking the rules. There are lots of catches in the TOS, that they may not enforce so long as you fly under the radar. But once you start heavily using their resources, you can expect to be flagged for any, and every breach of the TOS.
While the TOS has likely changed since I went through it last, there are a few key points that are common across nearly all “unlimited” hosts. Such as, they often do not allow for photo, file, or video hosting. The HDD is really only for storing files directly related to the website itself, (such as background images, HTML files, css files). Alot of people do things and will get away with it, but in most cases they are flying under the radar.
Essentially, any website using over 1gb of HDD is “suspicious” and likely to be investigated.
If you are using unlimited package (Unlimited web space and unlimited bandwidth) then no need ask about upgrade otherwise not one company will suggest for continue with same package. They will always show you one more option to buy.