Договорной запрет возможен, если ГК не относит его к ничтожным (как, например, отказ от права на судебную защиту).
Да, "за исключением случаев". Устанавливаете твёрдую цену и прописываете возможные случаи её изменения, если наступили такие-то события.