I also implemented a webbrowser control myself, but by now this issue hasn't occured to me because I use the webcontrol mostly for displaying information and not really offering user interaction.
Anyway, as usual, it appears you have to implement an additional interface called IInputObjects.
and microsoft documentation
I'm sorry I can't give an actual coding example but I guess it's something;)
(btw. are you using MFC or ATL? Because I used MFC and at least the Delete Key works for me, the Tab Key gets routed buy the MFC UI anyways so there's no way it can possibly affect the webcontrol:( )