Las concatenaciones de campos caracter, asi como las funciones aplicadas a los campos de la bd hacen las consultas mas lentas...
tal vez te serviria realizar una tabla temporal con los datos filtrados en tu server y con esa info ir a la tabla en el servidor linkeado, para ir solo una vez y se aproveche la velocidad de los indices utilizando joins adecuados...
tambien al consultar las fechas puedes cambiar el between por >= y <= ...
Saludos!