I didn't catch the "cover" issue, maybe a picture or some code will be more clear...

Anyway, the solution with the slowness is often to precalculate bitmaps as Phix said : ie to cache all states of you particle in an asset and load it to a BitmapData.
Also, you can do it dynamically by code : I m working with Shapes drawing API and filters too for my sprites, for each state, I draw the Shape, apply the filters, etc. and use the BitmapData.draw(myShape) to "convert" it to BitmapData.
As I prefer to work with one BitmapData for all the states I memorize position of each sprite within the BitmapData with a Rectangle. At the end of the precalculating process, I end up with one Array of Rectangle and one BitmapData. Maintaining an index, I loop through the Array and use copyPixels accordingly to animate my sprite.

Btw, try first to use powers of 2 on your blurX/blurY and don't exceed 8 to see if it speeds things up.
And also, it s better to deal with little Bitmaps (each with one paticle) than one big Bitmap, you accelerate things by copying less transparent pixels.

Hope that s clear... if not, I ll post an example.