Divs appearing everywhere in post content

You first should find out where the divs are coming from, since that’s not normal behavior. Could be from a plugin or – as Damien said – copy-pasting a text from Word.

To remove the divs you can do a simple

str_replace(array('<div>', '</div>'), '', $content)

either before storing the text in the database (by hooking on save_post), or before displaying it on the site (by adding a filter on the_content).

EDIT: I was wrong, you don’t hook on save_post, but instead you filter on wp_insert_post_data. This function below should work:

function remove_divs($data) {
    $filteredContent = str_replace(array('<div>', '</div>'), '', $data['post_content']);
    $data['post_content'] = $filteredContent;

    return $data;
}
add_filter('wp_insert_post_data', 'remove_divs', 99);

Put this in your functions.php