И мы с подобной проблемой сталкивались.
Т.е. в некоторых регионах домашней сети Билайна у нас просто отваливался GPRS.
Меняли саму прошивку модуля SIM900: B05, B07, B08, B09.
Сам набор команд пробовали менять, меняли процедуру инициализации/соединения.
Пробовали играть с конденсаторами на линиях SIMки, с самим питанием - замена стабилизаторов (LM2576, LM2676, LM5576, TPS5450).
Поставщик данных модулей в итоге нам предложил подбирать конденсаторы на цепи питания (использовали и электролиты, и танталы LowESR - как только не ставили)
Меняли сами GSM-антенны, вытаскивали их повыше - короче, были проведены все танцы с бубнами.
Все эти проблемы исчезли с заменой SIM-карт у самого Билайна.
Если поставить МТС, то проблем не замечено с февраля.
Если взять "проблемную" SIM-карту и засунуть в SIM300Z (B15), то работает нормально и без проблем именно на данном устройстве и у данного клиента (менялся только сам модуль).
Сама проблема была в следующем: устройство могло работать замечательно некоторое время (всегда по-разному: может день, может неделюб может несколько недель), а потом терялся GPRS-канал, вот кусок лога модуля SIM900 (процедура инициализации/соединения):
AT+CGATT?
+CGATT: 0
OK
AT+CGATT=1
и нет ответа от модуля
на SIM300 есть ответ "OK" и вся процедура инициализации/соединения происходит в штатном режиме.
Если на само устройство на базе SIM900 отправлять SMSку, устройство получает ее, и отвечать может SMSкой, но GPRSа не появлялось...

Ответ на +CSQ, если интересен, был в районе 14-21.
Касательно APN - у нас хоть на Beeline, хоть на MTS, хоть на Megafon - можно было писать "internet.beeline.ru" - им все равно... Проверялось зимой, что сейчас творится - не знаю (сейчас под каждого оператора прописаны индивидуальные профили), но почему-то думается, что все также и осталось..
А теперь САМОЕ ГЛАВНОЕ: Как бы найти методику определения "пригодных" для SIM900 самих SIM-карт?