Regarding wish: Wish as commonly used basically does three things. It duplicates spells, in case there's some obscure-but-very-useful-right-now spell you didn't prepare; it serves as a panic button, to teleport you out of dimensional locks and rez people and undo screw-you effects; and it permanently enhances people, either inherently (stat boosts) or indirectly (magic items).
So here's a suggestion for how to change wish to make it more manageable while still letting you accomplish amazing things with it. Instead of a complicated list of effects, it just has the effect that it gives you a certain number of spells or spell levels to work with (let's say it gives you 1 9th level slot, which you can break down to 2 8th-level spells, 1 8th-level and 2 7th-level, 4 7th-level, 8 6th-level, etc., for the purposes of this example, since 1 level X = 2 level X-1 is the established 3e spell level equivalence) and lets you use them to fulfill your wish by duplicating spells of 8th level or lower to achieve the appropriate effects. These spells are treated as wish in terms of parameters (i.e. they are 9th level Universal spells with no descriptors, with no casting time because they're cast as part of wish) and they can be made permanent at the caster's option if he pays more XP.
If you want to teleport into a dimensional lock, you can do that with a wished teleport, since dimensional lock blocks teleportation spells and this teleport isn't a Conjuration (Teleportation) spell. If you want to create tons of gold, you can do that by duplicating 16 major creation spells which have a permanent duration. A +4 inherent bonus to an ability score is a permanent fox's cunning/bull's strength/etc. If you want to wish someone dead through a death ward, you hit them with a finger of death that doesn't count as a [Death] effect. If you want to get a powerful magic item, you duplicate a discern location to find its owner and then a greater teleport to the owner's location. If you want to destroy an army, you duplicate 64 fireballs.
And so on and so forth. This prevents ridiculous wishes like wishing to kill the gods because you can't do that with a bunch of low-level spells, limits legalese in wishes because there's no screwing of PCs going on, makes more creative wishers because you have to figure out ways to accomplish your wish using existing resources, and doesn't exceed the caster's normal power level by too much. It still has potential for abuse (e.g. spamming 4 fingers of death at someone), but by the nature of spell duplication none of these abuses are things you couldn't already accomplish with appropriate investment (e.g. via twinned quickened finger of death + twinned finger of death); you're trading a large XP cost for needing certain feats or items, which seems fair. This will necessitate some changes in other parts of the rules (like saying that effects that block planar travel block [teleportation] effects and then labeling all planar travel with the [teleportation] descriptor, reducing the amount of precious metal available per major creation, ruling that permanent bonuses change type to inherent and cap at +5, etc.) but changes like making descriptors more consistent and reining in instant-creation spells are a good idea anyway.
A secondary consideration that I use in my games to rein in wish abuse: Wish-granting creatures can only grant wishes if both parties are willing and un-coerced, otherwise they can only grant limited wishes instead. A wizard tries to planar bind a genie and threaten/dominate/coerce it to give him a wish? Limited wish. An efreeti orders a slave to wish for something to benefit his Sultan at the slaves' expense? Limited wish. A wizard negotiates a fair deal, or an efreeti's friend asks him for a favor? Full wish.