Temporarily Fusing Heros
First, make your "fused" Hero Battle sprites. When you come to a fight that you want the heroes to fuse at, switch in the NEW hero, and switch out the ones that fuse, make a cut-scene, showing them fusing, and there you go, fused in battle. After the battle, switch back.
Be sure to make the fusion hero un-selectable as a party member, unless this plotscrip playes out, and that whoever you chose, the heros that are doing the fusion are automaticaly switch out and replaced by the new hero.
Now for fusing when ever you want! Start by making a plot script run before EVERY battle, asking you if you wish to fuse. If you select yes, have a text box switch on a bit set, that switches out the characters for the fusion. When the battle takes place, the fusion gets the exp instead of the main heroes. After the battles, make a plot script run that instantly switches back (as a bonus, you could have a plotscript which also awards half the experience to both of the fused heroes). If at the first plotscript, you select no, continue on as normal!