DISCLAIMER: You can mess up your phone when you delete the phone DB. Do this at your own peril. You will lose your address book and call history at the least.
EDIT 2: This solution might be kind of useless. After every phone reboot, if you add contacts using your phone, the first 7 get the IDs 0-6 since your phone doesn't think those are taken. Then, when you reboot the phone, those first 7 get deleted due to the service number magic (see procedure for more detail about this phenomenon). The fix for this is to add 7 fake users USING YOUR PHONE after every reboot and before adding any new users for that session. I think it can be as simple as duplicating one of your existing contacts 7 times. You could just have a blank or "0" user at the top for such a purpose. This begs the question, why should you do all this to get rid of the 7 service numbers when you then have to have 7 fake numbers in there anyway? The answer is you shouldn't. This procedure is only useful for people who have fairly static address books and will only add contacts every once in a while. The best way is to add them using PC Studio. It starts at the end of your IDs instead of the beginning. Unless you are willing to deal with this hassle, I'm pretty sure the service numbers are just something you're going to have to deal with until someone finds and disassembles the firmware.
1. Put phone in Samsung + PC Studio USB modes
2. connect phone to PC
3. Open PC Studio
4. Back up your contacts to PC, because you will lose them and your call history at the least
5. Close PC Studio
6. Disconnect phone from PC.
7. Switch phone to Qualcomm USB mode.
8. Reconnect phone to PC.
9. Open up BitPim and connect to phone's filesystem
10. Backup all the files in /DB2 and all its subdirectories to PC
11. Backup /User/Ct/Readonly.dat and /SystemFS/User/Ct/Readonly.dat to PC (they should be the same file, so you only have to back up one of them)
12. Delete /User/Ct/Readonly.dat, /SystemFS/User/Ct/Readonly.dat, and /DB2/phonedb/backupDB/phonedb.00 from phone
13. Close BitPim
14. Disconnect phone from PC
15. Reboot phone
16. When phone has fully finished booting, go into your address book and see that it is blank.
17. Switch phone back to Samsung + PC Studio USB modes
18. Reconnect phone to PC
19. Open PC Studio
20. In the PC Phonebook of PC Studio's contacts manager (Phone Editor), you should have all your saved contacts. At this point, you could copy all your contacts onto the phone, BUT the first 7 contacts would be gone next time you rebooted the phone. This obviously has something to do with the fact that there are 7 service numbers.
21. To remedy this, create 7 fake contacts named "000001" through "000007" in the PC Phonebook of PC Studio. Those are good names, because they have to be the first 7 alphabetically
22. Sort the PC Phonebook by first name ascending (see picture). The ID number in the PC Phonebook doesn't matter, as far as I can tell. They get copied to the phone in the order in which they are sorted when you hit "Copy".
23. Select All the entries in the PC Phonebook and copy them.
24. Go to the ME section of the Phone Phonebook. Paste.
25. When the copy is complete, you should see that the first 7 entries (IDs 0-6) are your fake contacts.
26. Close PC Studio.
27. Disconnect phone from PC.
28. Reboot phone.
29. When the phone has finished booting, open up your address book. There are all your contacts!
30. Reboot phone one last time for good measure.
If you connect to PC Studio, again, you should see that your actual first contact in the ME section of the Phone Phonebook is ID 7 (see picture). The first 7 (IDs 0-6) are being masked by the missing 7 service numbers in some way.
You're done!
EDIT: If something went wrong, try to restore the backed up files using BitPim. Don't blame me. I just found a way to do something and thought I'd share it.