The legs will not bow at all, all the force acting on it is pushing straight down. There is nothing going on the inside to act upon it to push out, so this will hold anything you wish to place in it. It will also hold an incredible amount of weight on top without no bowing of the legs either, if you added an apron that is attached to the top the same way you have a front stretcher at the bottom. If you did the top a little differently and made it so the top blocks "keyed in, or just added a few removable screws, it would help hold the front together.That way you could still remove it when you need. Like this without the screws at the top, it will not bow, maybe spread a little if you don't fasten the top.
I added your modified picture to help show what would help
I think you just about answered your own question.
I would attach the posts directly to the sides of the steps, with the posts extending down as far as possible. This will get you more bearing surface between the posts and the steps, and allow for more anchors in the masonry spaced further apart. This will make all the difference. I think the sheet metal mounts will always be prone to wobble.
The expanding sleeve anchors in your question are probably as good as anything for this, make sure you use long ones, even with 2x4's. In perfect concrete with a perfect hole, you wouldn't need that much embedment to secure the wood adequately, but this masonry is questionable compression strength and quality, so I'd go for as much embedment as possible. The 5/8" x 6" pictured in your question is probably just right, you'll have over 4" of embedment and that should be very strong.
I might use 2x4 rather than 4x4 posts. The thicker the wood, the less embedment of the anchor, and the more it will wobble; this may be hard to picture, but with a 4x4, the lever arm you have between the head of the fastener and the anchoring in the concrete is doubled. You're not holding up a deck, just a hand rail, 2x4s are adequate. You could also shorten the lever by countersinking the nut and washer into the 4x4.
Another way to go would be to double up two 2x4's, with the second 2x4 inside the first, with its butt sitting on the top of the step. You could get the same effect by rip cutting a half-lap into a 4x4. This might be the sturdiest of all, since the butt bearing on the top of the step would stiffen things a little more.
By the way, for future reference - when tapcons break like that, it's usually because there's some dust left in the hole from drilling, you can blow it out with canned air or other method.
Best Answer
To hang string lights you shouldn't need a lot of weight in the bases unless you're stringing 100' or so. For an average size yard I think what you show in the picture should be fine. I assume that you'll fill the base with with a counter-weight of stone or sand. You could use them as planters but then you'll want to put a liner in to protect the wood from the soil and moisture.
I would do large river rock in case you want to move the posts into a new configuration. It'll be a lot easier to unload and reset than sand or soil.
The structure in the picture is made up of 2x4s (actual size 1.5"x 3.5") with a 4x4 post (actual size 3.5"x 3.5"). Therefore that box is 19 inches high (including 1.5" for the feet on each corner). The width based on the 4x4 post is about 16" wide with an interior dimension of 13"x13".This might be a little off but not by much.
As I said above I believe that filled with rock or sand that will be a sufficient base for the posts to support light strings of 25 or 30 feet (you didn't indicate length of light string). However, it wouldn't hurt to over-build the base to a 24" square box with the same height.
Other factors to consider are:
Possibly a StackExchange engineer might want to weigh in on this.