EDIT: Pino me gano de mano pero la respuesta va a spire
es que tenes una mala idea de como funciona el servo.. el servo gira dependiendo del duty que tengas.
Al servo lo controlas por PWM,

donde tenes una frecuencia fija.. es decir la suma del tiempo que esta en alto ( Ton ) y bajo (Toff) es siempre igual, 20ms
ahora si vos a Ton lo tenes en 1ms estarias en 0º (Toff=19ms) y 2 ms en 90º(Toff=18ms) como para darte una idea.. observa que el periodo ( Ton+Toff ) es siempre el mismo.
Si agregas un retardo ahi donde pusiste terminarias modificando el periodo/frecuencia de la señal de PWM. (quedando Ton+Toff+retardo_agregado). Por lo cual no deberias de hacerlo asi.
Volvamos al tema principal como dije vos tenes 2 escalones uno que llamas "entrada" lo pone a 90º y el otro "bajada" que lo vuelve a 0º, si quisieras que fuera mas lento deberias de hacer distintos escalones.. por ejemplo suponete que quiero que haga 5 pasos entre 0 y 90º entonces deberia mandar:
Ton = 1ms y Toff=19ms
Ton = 1.2ms Toff=18.8ms
Ton = 1.4ms Toff=18.6ms
...
Ton = 2ms Toff=18ms
Esto va a producir una especie de escalon en la rotacion del servo ( por que son 5 ) pero si se pudiera hacer algo con muchos mas pasos entonces se veria mas continuo. Esto realizado con delays va a ser complejo, ya que tenes que seguir teniendo la proporcion para que la suma de ambos delays te den 20ms ( cuando lo tenes en 0 y en 1 ).
Tal ves lo mejor seria usar un timer para la generacion del PWM y que cada varios envios de la señal se modifique el duty ( Ton ) poco a poco.
EDIT:
Lo vi pero no lo iba a decir... Pino tiene razon, para cabiar un solo bit podrias usar tranquilamente BSF o BCF, y de ultima CLRF s pones todo a 0.
Tambien esta parte, el CALL y el GOTO no tiene sentido:
DECFSZ Q0,F
GOTO ENTRD
CALL BAJADA_1
GOTO COMIENZA
BAJADA_1
BTFSS PORTA,1Pudiendolo reemplazar por:
DECFSZ Q0,F
GOTO ENTRD
BAJADA_1
BTFSS PORTA,1Ademas estas usando un CALL que luego no tiene un RETURN, por lo tanto estas metiendo una direccion a la pila que luego no sacas y hay varios micros que entran en una interrupcion al haber un desborde de pila ( ya que estarias llenando y nunca lo vacias )
Y tu programa queda esperando si o si por la tecla especifica esa sino no hace nada.