И чем может быть ограничена работа такого приложения?
Работа такого приложения [без связующего сервера] может быть ограничена и будет ограничена фактом использования серых IP-адресов в сети мобильного провайдера, а также более агрессивными дефолтовыми настройками маршрутизации, которые врядли допустят TCP-подключение одного клиентского устройства к другому.
P.S. Обращаю внимание на условия "произвольный смартфон", "3G", "без связующего сервера". Для меня "произвольный" - это когда один смартфон сидит в Волгограде, а другой - в Мурманске.