When I used the 1-800 check in yesterday and didn't get the room number, although the person who checked me in told that I had stayed at the same suite several times before, I asked for a reason. I was told that people had used their friends’ accounts etc.
Even if you use the 1-800 check in the hotel swipes your card and sometimes ask for an ID if they don't know you so I really cannot see how giving out a room/suite number could facilitate fraud.
The real reason must be that the hotels do not want to commit giving you a certain room when you i.e. use the service in the morning and will check in late in the evening.