Можно свести решение Вашей системы порядка 2N к обращению матрицы порядка N и решению системы порядка N:
1. Запишем исходную систему в виде
 
2. Перепишем ее в виде двух матричных уравнений порядка N
 
 
3. Из второго
 
4. Подставим в 1-е:
 
или
 
Алгоритм:
- обратить матрицу A;
- решить систему 4-б) и найти 

;
- подстановкой 

 найти 

 из 3) 
И еще некоторые замечания:
5. Для решения больших систем итерационные методы часто эффективнее, чем прямые (типа Гаусса). Например, попробуйте метод сопряженных градиентов.
6. Поскольку у Вас ~500 итераций на шаге можно попробовать применить идею преград: на начальных итерациях иногда нет смысла решать СЛУ слишком точно.
7. Если матрица A от шага к шагу меняется мало, можно применить алгоритм корректировки обратной матрицы при изменении элемента / столбца / строки прямой. Алгоритм работает быстро, но неустойчив, так что нужно периодически выполнять обращение.
-