Gpu to interface with an arm cpu
Unfortunately, GPUs are mostly proprietary.
The Gameboy Advance - and most of Nintendo's consoles - used a completely custom GPU. Only Nintendo had it. You can't buy one.
The good news is that 2D graphics aren't too challenging.
Here are your options - in increasing order of computational power:

Get a custom chip with a GPU built into it. Costs $X,XXX,XXX to set up. Not really an option. You don't have to know chip design - companies will do this for you - if you pay them a few million dollars.

Use the main CPU to do all graphics. Even an overclocked AVR (yup, seriously) can process and render 2D games like Tetris and Mario, as in the Uzebox. This is the ultimate low-part-count solution, and it's very interesting, but I suppose you want something more powerful.
On the Uzebox, there is no extra video or sound hardware. There is just a DAC. The main CPU has to output the current pixel colour and sound level to the DAC, constantly, over and over. Apparently you get 6 clock cycles per pixel. Fun!
Actually I lied - it has an extra chip to convert the pixel colours into NTSC video. But if you were using VGA, you could delete that chip.

Do that, but with a faster CPU.
I read that the STM32 line of ARM microcontrollers goes all the way up to 480MHz now. You could have a lot more clock cycles per pixel, and do more stuff per clock cycle.

Use a separate CPU for graphics.
You could make it run custom code that only does graphics, written in assembly with careful timing. Then your main CPU doesn't need to worry about squeezing the game logic into the spare clock cycles between pixels.
You'll have to come up with a way to send commands from the main CPU to the graphics CPU and make sure the graphics CPU doesn't miss any bytes.

Use an FPGA and make your own GPU in the FPGA.
FPGAs are cool! You can basically build your own IC in software. It's not as fast or cheap as a real IC, but it's still fast enough for a homemade game system GPU. Maybe you can even design a CPU on the same chip (not recommended, though, if you want to be able to compile code for it).
If you are interested in getting into FPGA programming, I recommend Digilent's Arduino-style &quot;Arty&quot; board, which costs about US $130. Digilent also sell adapters you can use to connect it to speakers and a VGA monitor. *
You'll still need a way to send commands from the main CPU to the graphics FPGA, but it will simpler since your FPGA code will have a specific circuit for receiving commands - maybe even with SPI or I2C.


As for what kind of graphics you'll get, this is up to you, since you'll be designing your own GPU in any case. You could go for tilemaps like the Gameboy, or 3D graphics.
Since it sounds like you're making a handheld system, I guess you don't want a VGA output, but you can output to whatever LCD panel you end up using. VGA might be useful for development.

Edit: There are modules available with built-in graphics processors (e.g. SSD3306 OLED modules, or the modules from 4D Systems*), however they are usually aimed towards user interfaces, rather than games. They might not have the features you want (with the SSD3306 you'll probably end up streaming raw pixel data rather than using its built-in features) and they may not be the best value for money. If you find one that matches your requirements, though, you can definitely use it! (I haven't used the ones from 4D Systems but I'm aware they exist, and there are also other manufacturers. Search for display modules with integrated controllers.)
(Further edit: The asker found the EV810 and mentioned it in a different question. As I said, it's optimized for user interfaces, but it also looks good enough for a 2D game system, so why not? Good find.)


* while shopping questions are off-topic here, I believe it's okay to point to specific products as supplementary information in answers.