creo que tienes mal enfocado este metodo...
volvamos a poner el tema sobre el escritorio,
mencionas que un usuario puede agregar/quitar divs, en 3 columnas....
imagino que cada DIV nuevo(ID="col1_div1"), contendra un id diferente, al igual que el nombre de la columna con un incrementador al final para distinguir de que se trata cada cual... cierto?(ID="col1_div1")
tienes un limite de DIVs por columna?
si lo tienes; podrias delimitar una tabla con campos que guardaran cada div creado en columna... no crees?