I had a PIC18F4620 laying around, so I tried the code here. The Tiny Bootloader with internal osc seems to work fine here. I don't get an overwrite of my FF30 line though. Is your code very large, or is it writing to locations of the code space?

Also, this may be dumb, but Tiny bootloader will automatically see your chip the first time, without you having to reset the device. After you have used it to load your chip with your code the first time, you will have to reset power within one second of pressing the write button.