Zelda and Mario are both MBC5 carts so they should dump without any problems. Maybe try cleaning the contacts with some IPA and a cotton swab. Check the GB slot for shorts and also insert a GB cartridge a few times to mechanically clean the contacts of the slot. And then also switch the config switches around a little bit just to make sure they make good contact and provide a stable 5V to the GB cart slot.
You might also want to check this list of issues I have encountered so far: https://github.com/sanni/cartreader/wiki/Known-issues
Adding new GBA flash chips can be very easy or very hard depending on the flash chip. First you need to find out what chip is in the repro exactly and then if you're lucky there is already code for that particular chips in the flashrom.ino or n64.ino part of the code. Then you can just change one of the existing gba flash functions until flashing your chips is working. If you're not that lucky and the chip is not already supported somewhere in the code then you have to search for a datasheet of the chip, read it and then apply what you have learned. And if you're unlucky there won't be a datasheet at all and you have to resort to trial and error which can take a while.
One shortcut is to look at the code of other open-source GBA flashers like the very good GBxCart by insidegadgets: https://github.com/insidegadgets/GBxCart-RW If they support the chip then you can just port the code over and don't have to spend all the time reading datasheets.