If the scale is just an initial size, you don't need to apply it all the time, but instead to your initial positions (the ones that you'll transform every frame with the position/rotation).

If you always rotate around the center, then you can also directly define your 4 vertices around their center -- top-left corner would be (-size/2, -size/2) and bottom-right corner would be (size/2, size/2).

So all you have to do every frame is:

transformed.x = initial.x * sin(angle) + initial.y * cos(angle) + position.x;

transformed.y = initial.x * -cos(angle) + initial.y * sin(angle) + position.y;

I'm not sure about the order and sign of the sin/cos, you should check (ask Google for "2d rotation formula").