Let me start by outlining the 'normal way' to do this, so you get an idea what it is you are working towards.
1. make a database backup [old and working] [see below]
2. make a site backup by ftp [old and working]
by just copying to your desktop drive. Don't mess with it.
3. install new site [empty]
4. copy by ftp the old site to it's new place, using the backup in 2.
[if the filestructure (of the root and such) of both providers is the same you should be fine. If not, you might have some difficulty.
5. Startup the new site [no photos in it yet]. Install database backup plugin [see below]
6. Restore database backup to the new empty database.
So there is no need to manually transfer things.
== == ==
Now about fixing this thing...
I am afraid I have to start by stating the obvious...
DO NOT make any further changes to site, photo's, files etc. for now. Focus on preserving and restoring things.
- if you have a backup of the working site, [database and code] now is the time to use it.
- if you don't, contact the old host and see if they are willing / able to give you a backup of your database AND filestructure; be prepared to beg and grovel, don't be upset if they can't or won't.
- if at first your new site still worked when you did the transfer, call your current provider and ask for a backup of the working thing...
If all this fails...
-Start by making a backup of your current site database and site , so things won't get any worse.
-First install a plugin to do that for you such as 'wordpress database backup' by Austin Matzko.
-Make a backup and save to your desktop. Since you have a large number of photos, this will take a long time I expect, and take a large amout of diskspace.
- Make another type of backup: Dashboard > Tools > Export and store the xml file on your desktop
-Download and install a good FTP program such as Filezilla [free and solid].
- Make a backup of the entire site using FTP. This is important, since it contains the photos in it's correct [or when messed up... incorrect] position.
Looking at the problem you described, the photos are 'still there' but ended up in the wrong place on the new server. This may be the result of 'human error' or the paths of the old and new host servers vary.
To see which is which.
Open the new site.
Open Dashboard > Media > open a photo that DOES show
The last field 'File URL' should read something like
Open one that does NOT show. See if you can spot the obvious mistakes .
Copy the correct photo [check filename] to the shown path. [If need be first create the path]. Check the result. If it works with one photo, transfer the others of the same batch to the same / correct directory and check again.
Repeat for the others...