The PIC will always write a byte at a time. It is up to you or the compiler to fake the bit write.
You can do it with any compiler by keeping a shadow copy of the PORT/LAT register. Make the change to the desired bit in the shadow copy and write it to the PORT.
A bit less portable but you can use bit fields for the shadow register for some compilers including HiTech.
Make sure that you have configured RA0, RA1 as digital pins in the ANSELx registers.
Pins configured as analog inputs will read as '0'. When you set RA1, the PORTA register is read first and RA1 is then set. If you haven't configured RA0 as digital pin, it reads as '0'. As a consequence, when you set RA1, RA0 will be cleared - as you described.