короче, времени ща совсем нету разбирать код, но по тому что увидел, предложу загнать, каждый сгенерированный div (пункт меню) в родительский с фиксированной шириной, следующий будет падать ниже, для подпунктов классом повыставлять паддинги необходимые, а все точки загнять бэкграундом в эти div'ы