I've used the sparkfun bootloader before. The only thing I'd say is test it for a while... I had some cases where the PIC stopped working after several on/off cycles after it had been programmed with the bootloader, and it seemed that the firmware had been corrupted. I didn't look into it to see if it was the bootloader's fault, I just stopped using it to be safe.
There is no problem with using the USART pins in your application. The bootloader is a separate section of code that only runs when the PIC is first powered on, once it has finished and entered your user code you can feel free to shut off the USART module and do what you wish.
Bloader (as it is called) only comes with firmware versions for 4MHz and 20MHz for the 16F877A. It does, however, come with the C and ASM source code for each version, so it shouldn't be very hard to fix. (I believe the C compiler they use is CC5x)