Попробуйте установить для параметра GridData.widthHint
какое-то относительно небольшое значение, например 100. Это заставит макет не становиться слишком широким. Не забудьте также установить его для горизонтального заполнения.
Это должно быть все, что необходимо, если ваш макет не имеет элементов управления, которые увеличивают их высоту по мере ограничения ширины (например, обернутая метка). Если вы это сделаете, вы заметите, что ваши вертикальные полосы прокрутки имеют слишком много провисания в них. Ответьте здесь, и я дам вам остальное решение.