Imagine that I am using the "foo" tableam with "compression=lots" and I want to switch to the "bar" AM which does not support that option. If I remove the "compression=lots" option using a separate command, the "foo" table AM may rewrite my whole table and decompress everything. Then when I convert to the "bar" AM it's going to have to be rewritten again. That's painful. I clearly need some way to switch AMs without having to rewrite the table twice.
I agree with you, if we force users to drop the option as a separate command then we will have to rewrite the table twice.
It's also interesting to consider the other direction. If I am switching from "bar" to "foo" I would really like to be able to add the "compression=lots" option at the same time I make the switch. There needs to be some syntax for that.
One way to solve the first of these problem is to silently drop unsupported options. Maybe a better way is to have syntax that allows you to specify options to be added and removed at the time you switch AMs e.g.: