Second, get rid of the RPM changelog embedded in the spec file; conceptually the goo to build a package is independent of the history of that goo. Just extract the history from the RCS, or have a separate file, or something.
The changelog should reflect the history of the *packaging*, not the package.
Third, get rid of the idea of manually bumping revision numbers and hardcoding these in the spec file. These should be automatically generated from the upstream source version and a package build database when I want to build a package.
A lot of packages include a spec.in file which is then passed through sed to install the version number in the spec file before a tarball is generated. Eliminating this extra step would make it easier for upstreams to provide RPM support by eliminating this extra step.