You can go to the move deleter in Fuchsia City and delete the HMs, then teach them to your Pokemon again after you transfer. Sadly, you can't reteach dive, but it's not a very good attack anyway.
No, but it was part of my strategy in Pokemon contests. My Milotic was a beautiful killer, lol.