I bought GTA V from Rockstar Warehouse, but now I regret that decision. Will I keep my save data / online users if I use the code I get from Steam to activate on my current rockstar account? Also what will happen about the achievements? Will I keep my online character?
If you link your current Rockstar Social Club (RSC) account to your steam version of GTA V, you will keep your online characters, profile and friends, as all that is saved to your RSC account.
Your offline mode save files are saved on your computer, so they should stay as available as well. Your achievements most likely won't get transferred to Steam, but they will remain on the RSC account.
You won't actually have to redeem your key on RSC account, since you can just log onto your existing account when you first run the game from steam, so you will have a spare key to activate on a different account, that will be non-steam.