For my money that is one of the least of the problems of Riviera, though I think it might just be a marmite game (some people love it, others hate it. For me would not be until Monster Hunter that I encountered something quite so "on paper this is everything I want but I just can't get into it"). For those not familiar it was a very late stage GBA game and usually overshadowed by the PSP release. However it is still an Atlus RPG and thus considered by many.
Inventory expansion hacks are tricky things to do. You tend to face memory issues in both doing it in the first place and saving, and then altering any menu logic (for which there might be a lot) to handle it all. The only times it gets easy are for artificial caps for challenge purposes (rare as you tend not to waste memory*), or things where you might unlock/buy some during the course of gameplay. Possibly also display issues if the game only knows how to count to 10 or 99 or something and you go further. I also imagine here you are not going to face hard number limits but if you can handle a memory relocation then it is not so far to handling a greater value.
*modern PC games might be different here, though also not immune to memory issues -- see the recent fun with cyberpunk and duplication glitches.
I would start by making infinite items cheats (hopefully no anti cheat so in turn basic cheat making
https://web.archive.org/web/20080309104350/http://etk.scener.org/?op=tutorial ).
That way you know where in memory, and presumably the save as well (or can easily get it**).
**make savestate before save point, save, restore savestate, use item/activate cheat to give you max of a given item/slot***, save, compare two files).
From there then you get to figure out how it knows when to stop, or when the cursor wants to wrap around (it will be a graphical result so that can be used to work backwards to it). Sort any memory issues/change to somewhere with a free chunk of memory so you can more easily fiddle (not impossible on the GBA but it is measured in hundreds of kilobytes so have fun), do the same for save grabbing and restoration code and you have your hack.
***items barring the modern games work in generally one of two ways.
1) Item name and counts. This will tend to be for things you can arrange in a game. Here the inventory will be filled by some manner of item identifier and item count -- if you have ever had a cheat code guide where you had to replace the payload part (usually the end of the cheat) with some value according to what you want or would appear in a given slot then this is that. If it is in the memory location part then might be the thing below.
2) Item location on a table determines the count, which is actually one of the nicer things for inventory hacks if there is not a hard limit you are brushing up against. If you are having trouble visualising things then imagine making a big spreadsheet for inventorying whatever and then a place you can put a count next to it.
Modern games might be more modern data handling approaches with linked lists, proper databases or quasi databases, and items themselves will tend not to be a simple identifier as much as list of attributes they have within the definition (if you have say 9 element types, damage, magic damage, accuracy, weight, cost, bunch of buffs... then it starts to add up vs saying atk=100, fire elemental 10% and everything else left by the wayside). I would not be stunned disbelief to see something like this on the GBA (Diablo on the PC was 1997, this was 2005), and there are perks to this approach that you could justify the annoyances, but it would be a notable event.
Possible option for the meantime. It is possible to make button activator cheats (
https://web.archive.org/web/20191123185756/https://doc.kodewerx.org/hacking_gba.html ) and hardpatch those into GBA ROMs (see GBA-atm and GBA-atm rebirth) quite trivially. Adding something/setting to full is a thing you could do. If you lack the self control to use it properly then you could do a stinger like adding this also removes health/mana/money/experience/... as those are probably still going to be things you can find with cheats (or indeed learn from cheats someone else made).
Possible alternative the second. 50/50 chance of consumption by using the item will statistically make for the same result in the long term, though short runs of bad luck with low item counts means that might not be ideal for some things (I am not usually one for adding randomness into games). Far easier hack to do as well, even if you have to delve into code (I can see a path to doing this with cheats if you have nice options for memory and want to code in a bit of logic, would rather do it on the DS or PSP though with cheat engines there as the GBA stuff is that little bit too crude for my tastes for stuff like this) -- anything that writes the potion count you want to look at, presumably to remove one. Easy enough to change a simple subtract to one that flips a virtual coin first and then does what needs doing.