I will forgo all talk of more traditional image editing/scaling methods- you are on your own there but that seems to be besides the point.
"One more thing : my image is a raw binary files (no header, just raw GBA 4BPP graphics). "
Were it a proper format I might have had more hope; for all the annoyances associated with having to reverse engineer a format they are usually more pliable once it is known (music hacking on the DS with SDAT versus most of what came before will provide a good mirror situation).
If indeed it is a raw image it might be (read probably is) just be a straight copy by whatever means into the VRAM and manipulated from there on by code.
You say sprite as well so I assume OBJ/OAM rather than BG (BG has some scaling/compositing options- text is often kicked to BG so there are some "known" methods there).
I will assume the game does not have a larger pseudo format in/defined by the binary somewhere (it is fairly pointless as the hardware effectively is a format by itself).
This is dancing about the point though so getting back on topic if is a raw image this changes things.
The game likely copies the would be tile (you say raw so I am not anticipating any compression related issues/stops in other ram first), any palette info (although I imagine this will stay the same for your hack) and throws it around the screen (as well as provides an initial definition) via OAM. Games do not tend to fill the VRAM (granted this is an opinion based on when I am using emulators I will often look at the OBJ/map viewer for no real reason) so you should still have some space in there somewhere (I certainly hope so as trying to handle this otherwise is not going to be fun).
Multiple tile sprites are one of two things
1) Actual OAM defined large sprites (more on that later)
2) Sprites the game code handles at code level (outside of a format) where it knows what goes (add or subtract X accounting for offsets as demanded by the game at a given interval (usually related to vblanks and what have you)). This is usually to avoid having to handle the display register as much.
8x8 is a standard tile size/ obj format in the hardware (things will use this just leaving everything they do not want as transparent and handle everything else in OAM)
I will also mention phoenix wright at this point; it had a very interesting animation format born of very creative OAM handling.
This places you in ASM territory although chances are it is not a hard ASM hack as cousins to it might be (you are expanding the functionality of a compiled embedded program with addresses largely already coded).
You get to find and modify
the sprite loading command/routine and change it to add your new tiles (if it is raw/otherwise without format I would add the next tiles to the file and just change the read length although you do run the risk of overwriting something important if you simply change it- consider kicking all to somewhere else in the VRAM)
any OAM handling after this you will have to account for as well although it should not be too hard
a) the other three sprites are probably immediately surrounding this sprite at a known, fixed distance or you prefer there is a sprite size option in the OAM but that might involve changing the VRAM layout stuff) although if you are using the hardware or some other routine to scale/mirror the sprite at some points you will have to account for this (probably not for text but who knows).
b) you used the large tile/composite options with relevant video modes. Get this handled and the game should take care of the rest (although you might have to change some OAM stuff to stop it falling off the edge of a screen.
Whether the game has something else on top of this or some quirk is a matter for testing at this stage.
I mentioned the display register earlier- depending on what goes you might have to handle this. For a homebrew/something you can compile this would be no problem but the game might be using 8x8 deliberately.
Naturally you will need to understand the GBA/DS video (you can skip the DS 3d stuff though)- gbatek
http://nocash.emubase.de/gbatek.htm#lcdobjoverview has good stuff but in addition I will suggest tonc
http://www.coranac.com/tonc/text/video.htm (GBA but still good), cowbite
http://www.cs.rit.edu/~tjh8300/CowBite/Cow...ware%20Overview (another GBA doc but has a lot more in somewhat more plain English then gbatek) and
http://www.pineight.com/gba/managing-sprite-vram.txt (GBA and more of a coder's reference/thought exercise but no less valuable than the links I just gave).