It is possible to set a different ringtone for every caller. You have to assign them to each caller. I'm not aware of any tweaks that use different random ringtones. There probably one available but I'm not aware. If anyone knows let us know.
Yes you can sync as many as you want of ring tones, just make a folder and have it in a fix location in your computer, put all your ring tones in that folder first then drag and drop them in iTunes. After connecting your iPhone to iTunes click on your iPhone icon and near by the summary tab you will see ringtones tab, check the box to sync all ring tones to your iPhone.