Мне кажется, что здесь не столько в wp_query дело, сколько в оптимизации. Плюс, Я.Картам тоже нужно время на отрисовку всего.
Попробуйте начать с оптимизации запросов и уменьшить количество запрашиваемых элементов. Здесь нужно подвязаться к параметрам карты - области видимости, масштабу, текущей позиции и т.д.
Еще можно посмотреть в сторону кеширования ответов от БД.