Having the same problem. I spawn a particle using the "Position on Model Random" Initializer, teleport it to the player's position and use SetParent to define the player as the parent. Once activated you can see it spawning at the player and then quickly being moved to the world origin where it stays for it's whole lifespan.
I am also testing this with the burning_character particle. It has the
control_point_number in it's Position on Model Random Initializer set to 1, which is described in the Valve Dev Wiki as "The control point to get an entity from."
I now tried to initialize the info_particle_system with
cpoint1 ("If set, control point 1 of the effect will be at this entity's location.") set to the player via
DispatchKeyValue. However I don't know how to specify the client correctly, as it requires a
Targetname as the value for the entity.