Say name of a caller on iPhone
By default, no.

But it wouldn't be that hard to record the name (or perhaps using the voices in VoiceOver Utility to speak them), turn that into a ringtone, and then apply it to the specific contacts you have via the Address Book as a custom ringtone.

It's a bit of legwork, but it's a clean way of doing it and won't require any outside software or hacking of the device.