This is a regular topic of discussion since you are reminded of it every time you pull the trigger on a Topper or pardner 12ga. Some of the solutions have been adding wieght to the bolt hole in the stock, adding weight to the forearm, and the mercury recoil supressor. There has also been high praise for the limbsaver recoil pad. You can always get a slip on pad as well. More costly options would be back boring , lengthening to forcing cone and porting. Another thing might be the reduced recoil loads or simply not using mag loads when they're not a necessity. The addition of wieght to the stock seems to be a common and successful fix. My favorite wieght was the use of rolled nickels, But I think the most common is the use of shot.