Интересный вопрос. Какое-либо специальное правило, ограничивающее употребление прилагательных, образованных от названий стран, с существительными – названиями городов, нам неизвестно, да и вряд ли оно существует. Дело здесь в общей тенденции к экономии языковых средств: сочетания типа чешская Прага, итальянский Рим, французский Париж потому и выглядят странно, что они избыточны, плеонастичны: вряд ли найдется грамотный человек, не знающий, что Прага находится в Чехии, Рим в Италии, а Париж во Франции. Но чем менее известен населенный пункт, тем более оправданно употребление прилагательного; оправданно оно и в тех случаях, когда существует несколько населенных пунктов с одним и тем же названием в разных странах, например: в отличие от российской Москвы польская Москва – небольшая деревня. Поэтому ответить на Ваш вопрос можно так: явной ошибкой сочетание испанская Барселона не назовешь, но лучше всё же обойтись без прилагательного.
Правильно: «Самый лучший фильм – 2» (тире с пробелами); «Вики Кристина Барселона» (как в оригинале; по-видимому, отсутствие знаков препинания несет здесь определенную смысловую нагрузку, в соответствии с авторским замыслом).
Подробная статья по этому поводу есть в книге «Грамматическая правильность русской речи. Стилистический словарь вариантов» (авторы: Л. К. Граудина, В. А. Ицкович, Л. П. Катлинская).