This is a reoccurring problem and I'm faced with it constantly, I'm starting to believe that setting EjectionVelocity to a negative number just doesn't work, it ends up rounding up to a zero value and you get no movement apart from acceleration/gravity stuff.
The easiest way to get around this is to set the ConstantAcceleration value in the particle datablock to a negative number.