HSERIN work well @ midi baudrate if you set it correctly and if you're using a good crystal value. Use my PicMulticalc to see what type of error % you may have with your current OSC speed.

If you're using the internal OSC... yes you will have problem.

Sure it will'nt solve the problem, but you can use a single line for HSERIN.

Maybe not a bad idea to include the HSER_CLROERR 1 Define at the top of your program