Is there any way I can change the biome of a specific area to, say, Savanna?
When Minecraft 1.2 is released, using the new “Anvil” file format, biomes will be stored in the chunk data so that they can be redefined on a per-column (x,z) basis. You will need an editor which supports doing so, or a generic NBT editor, of course. (Source)
This answer is now obsolete, please see Kevin Reid's answer for current information.
According to this, biomes are dependent on the level seed stored in the world. So, it means that, for every chunks, biomes are not saved in the chunk, but regenerated each time. You only chance a changing a biome would be to change the seed, but it would change every biome on the map, and new chunks won't match the old ones.
For bukkit, there is also BioMed, which I have not used - it seems to offer some features WorldEdit doesn't, like "Convert whole maps to the same biome!" and "Spawn nether mobs in a normal world!"
For out-game: the MCEdit FAQ states
Can I use MCEdit to edit the weather/biomes/temperature/snowfall?
Currently, you can't. The new Anvil format does store biome data in the region files now, however, so the ability to do so will be added in a future version. Otherwise you can change the random seed, but that has other side effects.
Yes, but you must use a plugin called WorldEdit. This will allow you to change the biome of a world chunk-by-chunk, using the
The worlds you create will be compatible with vanilla Minecraft, so other people playing in your world will not need to have WorldEdit or any other mods installed for it to work.
Here's something I just found.
I was using CMEdit to copy/paste creations from a couple of worlds into a superflat world, when I noticed this had pasted in the original biomes. I copied a huge flat slab of grass from the superflat world and pasted it above the imported builds. This altered the biome to "plains". I then just filled the grass "roof" I had created with air.
It's all good now. In the future, I'll just uncheck that little box marked "Copy Biome" before I paste stuff, but it's a happy accident.
So you still need MCEdit, but you can do without the plugin.
Hope this helps someone.