Можете воспользоваться техникой моргания, поставить дисплейн нон и сразу диплей блок на боди. Но это грязный фикс, стоит воспользоваться в случае если нет времени, лучше конечно, разобраться в чём дело.
Либо поставить их в обратном порядке и поставить float:right на item и float:left на контейнер. jsfiddle.net/6RAK8/2/
Либо поставить z-index'ы на item в ниспадающем порядке. jsfiddle.net/6RAK8/3/
Если пункты скрыты, для чего их рендерить? Пусть сервер строит только те которые нужно. Если пункты динамически отображаются, тогда не вижу проблем, чтобы решить проблему с помощью js. Можно скрывать следующий элемент вместе с item, то бишь скрывать item и его следующий элемент. В джаваскрипте следующий элемент можно получить так: node.nextSibling;
Не совсем, в примере автора раз на раз не приходится. Тут скорее всего в поведении самого скролла такие правила. Я думаю, стоит просто запоминать позицию скрола, а потом заново ставить. jsfiddle.net/ej8AL/1/
Советовал бы избавиться от яваскрипта и позиционирования основного блока, выравнивать по центру margin: 0 auto;, прикрепить сайт к верху документа. Просто если страницы будут иметь разную высоту, скачки пойдут не на пользу. Потом, не используйте везде айдишники, есть классы. Чтобы тень хорошо смотрелась, лучше её налаживать на сам листок, а скрепки отцепить и отрицательно позиционировать, хуже от этого не будет.