It seems you have two distinct problems -
Random count when downloading the driving PICAXE - This sounds like a hardware issue as already noted.
SERTXD interferes with the count - This sounds like a timining or synchronisation issue when the receiver's loop time is extended through sending data,
Can you produce a simplified circuit and programs which demonstrates both these problems but still reflects what your full circuit and program does ?
I just tested a PULSOUT and a COUNT system and it's not as easy as it first appears, it's a nightmare of timing and synchronisation and any change to code that works can easily throw that into disarray. You may be on a hiding to nowhere and be better off using an alternative system of communication; SEROUT/SERIN would be much more controlable and predictable.
This works, but alter the timing and all sorts of odd things happen ...
#Picaxe 18X
Do
Do
Count 7,500,w0
Loop until w0 <> 0
SerTxd( #w0," ")
Loop
#Picaxe 28X1
Do
b0 = 1 : Gosub SendPulses
b0 = 3 : Gosub SendPulses
b0 = 5 : Gosub SendPulses
b0 = 7 : Gosub SendPulses
b0 = 11 : Gosub SendPulses
Loop
SendPulses:
For b1 = 1 to b0
PulsOut 6,10
Next
Pause 1000
Return
Added : It doesn't work :-(
Though it does for most of the time, the PULSOUT and the COUNT timing frames get out of synchronisation which isn't surprising as they are asynchronous systems with slightly different timings, much like belisha beacons on road crossings go out of sync if not connected together
Without some synchronisation it appears that this is a flawed concept and won't ever work reliably.