Літо 2006 року було дуже напруженим для Гарсії — він грав у більшості ігор «Реала» до початку сезону, але, незважаючи на це, в основному складі команди в сезоні 2006/07 не з'являвся.
У серпні 2007 Хаві Гарсія грав за основний склад «Реала», оскільки Рубен де ла Ред і Естебан Гранеро покинули клуб. Гарсія почав отримувати пропозиції від клубів Прем'єр-ліги, і від внутрішніх команд, таких як «Атлетіко Мадрид» та «Депортіво». 31 серпня він підписав контракт на чотири сезони з «Осасуною», яка заплатила за гравця 2,5 млн євро. Контракт Гарсії мав стаття викупу, що передбачала, що Хаві міг повернутися в «Реал Мадрид» в будь-який час за 4 млн євро. 29 квітня2008 року «Осасуна» офіційно повідомила, що «вершкові» вирішили скористатися пунктом про покупку і гравець повернувся на «Сантьяго Бернабеу» перед початком сезону 2008-09. Вже в серпні того ж року допоміг королівському клубу виграти Суперкубок Іспанії, зігравши у першому матчі.
Проте закріпитись в складі «Реалу» Гарсія знову не зміг і 21 липня2009 року уклав п'ятирічний контракт з португальською «Бенфікою», у складі якого провів наступні три роки своєї кар'єри гравця. Більшість часу, проведеного у складі «Бенфіки», був основним гравцем команди. За цей час додав до переліку своїх трофеїв титул чемпіона Португалії та три Кубка португальської ліги.
В останній день трансферного вікна 2012 року Хаві перебрався в «Манчестер Сіті». Англійський клуб заплатив за нього 16 мільйонів фунтів. У першому ж дебютному матчі за «містян» він зумів відзначитися, тим самим принісши «Манчестер Сіті» нічию в матчі проти «Сток Сіті» (1:1). Наразі встиг відіграти за команду з Манчестера 35 матчів в національному чемпіонаті.