A1
Дело не только в передаче, а в том, как она будет обрабатываться на стороне клиента, например это получается с помощью клиента HTML?
Задержка является настоящим убийцей на мобильных устройствах, но память также является большой проблемой - я бы выбрал формат, который проще всего обрабатывать клиенту, может быть, JSON (P), но я бы хотел посмотреть на данные / приложение более подробно составить реальную рекомендацию.
Если вы пишете нативное приложение, то, безусловно, стоит рассмотреть бинарный протокол, такой как ProtoBuffers или Thrift, но у меня будет соблазн создать прототип с использованием JSON или одного из других текстовых форматов.
A2
Вероятно, что вы знаете лучше всего (в пределах разумного)
A3
Я бы пошел на REST на том основании, что некоторые запросы будут GET.
RPC предполагает, что запросы будут представлять собой POST, и некоторые браузеры разделяют AJAX POST на два пакета TCP, второй из которых отправляется только после подтверждения первого (плохо в средах с высокой задержкой).