In Grandia it felt like the player had more control about the skill and elemental levels because each use contributed more or less to their growth (even if the MP growth distribution was random). In FF2 it was totally random and it meant that raising certain stats was a pain. I have bad memories about raising MP for example.
About the skill levels, the hit rate being affected by it in FF2 meant that you pretty much had to waste turns casting useless spells just to level them up (I hate how Esuna works). Meanwhile in Grandia, spells and skills worked from the get-go so levelling them wasn't a chore and it was simply a nice reward for using them.
It's not "totally" random, but RNG was a bit of a pain when it came to actually wanting stats leveled up.
Like for HP/MP, the more HP/MP you used/lost in a battle, the higher the chance that it would go up. Granted, you could use all your MP and still not get it to increase, so it wasn't guaranteed by any means.
Agility was random as hell though since you needed Light Armor to have a lot of it, and you could only realistically raise it by having enemies target you in battle.
(This is why you pretty much HAVE to have a shield on a melee character. It's the only way you're gonna get Evasion, Shield levels, and Agility going up.)
Leveling skills/weapons sucks though, and there's no getting around that.
I will agree with the shitty way Esuna/Basuna was handled though.
Leveling them is a complete pain, and you pretty much have to raise its levels for it to actually do anything useful.
(Petrified? Lv1 Esuna says you're screwed.)
At least with Raise, you could insta-kill Undead with it, and there was no shortage of those guys.
It's basically one of those things where the leveling system sounds so good on paper, but ends up terrible in execution.