Hah, what a nightmare! I decided to satisfy my personal curiosity on this one and read up on it a bit and this issue is much bigger than I originally realized and many are pulling their hair out due to this Apple "feature".
From what I've read iMessage is turned on by default (can be turned off in the messaging settings) and it's main function is to help save you money on texting. A regular SMS/MMS message goes through your carrier and counts towards your quota where a iMessage gets routed through Apple servers and does not effect your carrier quota. When an Apple user selects their "Messages" app and starts typing in the names Apple verifies what type of handset the recipient has, if it is an Apple product the bubble around the name is blue (signifying a propriety iMessage) and if it is a non-Apple product the bubble is green (signifying it will be sent as a SMS/MMS). My understanding is that if the iMessage fails to deliver it defaults that specific message (not contact) to SMS and resends.
To make things even a bit more confusing I could not reproduce the error using my work phone (iPhone with OS 5.1.1 (9B206). I opened the Messages app and started typing in some names of people that have iPhones and all the names were blue and the header of the screen indicated "New iMessage", once I added a single contact that I know has an Android phone all the names in the group turned to green and the header changed to "New Group MMS". My wife and I have both received the empty messages from iPhones in the past on our Androids but when sending from my iPhone to both it identifies them correctly and delivers the message as expected. Who knows, maybe it's because my work iPhone is a Sprint model and our Androids are on VM using the Sprint network although I know I also received iPhone messages from one of my girlfriends who is on the Verizon network.
Back to my original post where I indicated my friend receives the same messages fine on his Motorola Droid...maybe Apple identifies the failure to his phone and then resends the message to his phone as a SMS/MMS while mine receives an empty bubble so Apple believes it was delivered as expected.
Who knows but what a debacle! My assumption is that you did not own a Apple device in the past, if you did there is a know fix for this. You could also try having the sender turn off iMessage, then send you a message and respond back to it, have them turn iMessage back on and perhaps their device will then associate your contact info with SMS/MMS instead of iMessage.
I know this was a long rant but bottom line is that this is not a Carrier or Android issue, it is a "feature" of Apple that doesn't always work as expected. It does suck but don't the majority of people have unlimited texts in their contract these days?? If so why even use iMessage and have your data go through the Apple servers? Maybe I'm missing something but I don't see any other advantages to use iMessage other than standard SMS/MMS (
Apple - iPhone 4S - Send messages, messages, and more messages.).