Во-первых, любой iPhone старше 3GS имеет максимальный размер текстуры 1024x1024.Ваша игра будет зависать на старых устройствах.Во-вторых, OpenGL округляет размер текстуры до ближайшей степени двух при создании текстур.Ваши текстуры 1986x1562 на самом деле имеют размер 2048x2048, что составляет 4 мегабайта.
То, что ваше приложение использует 31 мегабайт после загрузки одной текстуры, вероятно, из-за других факторов.Если вы не вернетесь с пустым проектом, который просто загружает одну из этих чудовищных текстур, и при этом у вас есть 31 мегабайт, я скажу, что это что-то еще.
Что вы должны сделать, это логически сгруппировать ваши текстуры в несколько изображений1024х1024.И используйте инструменты профилирования Xcode, чтобы определить, куда направляется память.