I've had a quick look using vLTM. And the CLIENT_DATA event fires just fine... When I test from the command line... And assuming there's an EOL sent...
If your data is purely binary though, I think the problem you're running into is the lack of parameter to the TCP::collect command. The VS will be sitting there waiting for more data, because you haven't told it how much to collect before firing the CLIENT_DATA event.
That'll also be the reason I think that the LB_SELECTED is taking 60 seconds to fire... You're having to hit a timeout before the process proceeds...
H