What about s<C-r>0, this can be repeated with .
sdeletes the character under the curser and puts you into insert mode.<C-r>0inserts register 0, which holds the yanked text.
You can also use s and type foo manually, which is also repeatable with .