Puerto Rico is one of the largest islands in the Caribbean, so its topography has more diversity than the smaller islands.
One of the thing that has always impressed me about Puerto Rico is the emphasis on family activities. Aruba, IMO, is more of a young, childless or generational (mature adult/single teen or young adult) location. It does have nice, white sand beaches with lots of bar and restaurant options, but I've never seen many families out and about like I do in Puerto Rico.
So far, the best beach I've seen on Puerto Rico was on Culebra. Their Flamenco Beach has been awarded the Blue Flag for its commitment to environmentalism. I hear good things about the beaches on Vieques, too.
I haven't had a chance to visit Puerto Rico's western beaches, but I've heard they're nicer than the ones on the northeast side. You might want to google Rincon beaches or southwest Puerto Rico beaches to see how they rate. The beaches in the Condado/Isla Verde area are, IMO, just OK.
As for St Lucia, their environment seems similar to St Kitts, and the beaches on St Kitts are just OK. Neither island is known for their white sand beaches, but more for their brownish sand beaches. St Lucia is also more of a resort island than Aruba or Puerto Rico.