My suggestion is just that pardons and commutations are put on hold for 60 days or something (executions excepted) pending an optional review by Congress, whereby they can nullify by some large majority (2/3 rds?). This would leave the power open for any sane usage and avoid scenarios like pardoning every murderer for any crime they ever committed, and probably for less serious scenarios too like pardoning friends/family or other corrupt usage.
My proposal is that pardons take six months to go into effect, and the sitting president can revoke them at any time until those six months elapse. Would prevent these last minute pardonpaloozas.
I think it would be wise to up it to 80 days, basically make it so a president cannot pardon someone in the lame duck (I believe 79 days is the max it can be between Election Day and the Inauguration). If you want to pardon someone, do it when there may be an electoral consequence (either for you or your party).