I think this might be related.  In the following function, point is also not restored:

(defun my-java-organize-imports2 ()
  "Sorts import statements"
  (interactive)
  (message "Point %d" (point))
  (sit-for 3)
  (save-excursion
    (let (deactivate-mark)
      ;; Remove empty lines between imports
      (replace-regexp "^import \\(.*\\)\n\\(\n\\)*import \\(.*\\)$"
                      "import \\1\nimport \\3"
                      nil (point-min) (point-max))
      ;; Sort imports in file
      (sort-regexp-fields nil "^.*$" "^import .*$" (point-min) (point-max))))
  (message "Point %d" (point))
  (sit-for 3))

Thanks,
Alexander