Оба варианта верны.
Да, соответствует.
Можно обратиться в Институт русского языка им. В. В. Виноградова РАН: www.ruslang.ru
Если эти слова употребляются как часть официального названия государства, правильно с прописных, например: против Исламской Республики Иран. Если же они выступают в обобщенном значении 'форма государственного устройства', следует писать строчными, например: он выступал против исламской республики, за исламскую монархию.
Это свободное (не фразеологизованное) словосочетание, его значение выводится напрямую из значений входящих в него слов.