Hello again.
It's a bit difficult for me to help ATM as all my gear and books are packed away ready to move house, so I gotta go by memory.
The way I see it, if the red led is blinking on the transmitter module then it is seeing some data. So far so good.
The trouble I had was making sure the house code was right. Codes A to P are equal to 0 to 15 and not 1 to 16 which was where I mucked myself up for a while. Your house code is "D" so that is equal to "3" and I think you are sending as "5". The easiest thing to check is to set the house code on the receiving module at A and send it something, without changing your program, and if nothing switches, set the module to B and go through the settings right thru to P and see if that makes a difference.
I've just had a look at my program, but without the manual to look at I can't remember what the variables are or the correct setup of the X
OUT command so that's not much help huh?
Anyway, it seems to me that the transmitter is getting data from your PIC so I would make a little bet that the house code is part (if not all) of the problem. PS have you told your program that you are running at 20MHz? Try running at 4 and see what happens.
I'm gunna be off the air for a couple of weeks at least, so I can only wish you all the best and I'll check the forum out as soon as I am back on.

My send line is XOUT datapin,zeropin,[house\index\2,house\%11010] and yours is xout portc.6,porta.3,[5\5,5\unitoff] so muck around with the syntax of yours and compare them. (Mine does work perfectly BTW).

[house\index\2,house\%11010] translates to [housecode\unitcode\2,housecode\unit off] from memory the 2, represents number of send each command, or similar.

Anyway, all the best, and I'll catch up with you in a cuppla weeks or so.