By Advance, you mean Gameboy Advance?
1) Not always true. It depends on the game and what you are writing over in those 20 bytes.
If the extra 20 bytes is assembly or other game data that is read, then yea, you could corrupt the game.
If it is nothing used by the game, then it won't hurt anything.
If it is other dialog text, then you need to move that text over 20 bytes too and update its pointer (a value that tells the game where to find the text in the ROM), otherwise you need to find a way to shorten the space taken by your text, or you need to find another spot to place the text, and still update its pointer, to tell it where the new spot is.
2) It is called a 'patch'. It compares the original ROM to your modified version and extracts only the parts you modified.
I believe you can use LunarIPS
for GBA games.