Не переносить 2,5 МБ XML на клиент - точка.Должен быть лучший способ сделать то, что вы пытаетесь сделать.Возможно, вы можете добавить нумерацию страниц, чтобы вам не приходилось загружать все результаты одновременно - вместо этого вы можете отправлять клиенту примерно 20 или около того по мере необходимости.
Во-вторых, не используйте XML - используйтеJSON, поскольку он будет как минимум на 20% меньше и в собственном формате для JavaScript, что сократит обработку на стороне клиента.