I am attempting to align the horizontal centers of background box here with the bookmark icon and associated text (all three are on separate layers).
The problem I'm having is that when I select all layers and click Align Horizontal Centers, the icon and text shift left to align with the box, whereas I would like the box to shift right to align with the icon/text.
I believe it is possible to set a "key/reference layer" in Illustrator which will make other layers align to it, but how can the same be done in Photoshop?
To align a set of layers horizontally where you want one layer to be the reference point (in your case icon / text) and the other layers to adjust horizontally to that you have to tell Photoshop that this specific layer should not move. To do that you simply select the layers you want to align, Ctrl + Click on the layer thumbnail of the layer you don't want to move (e.g. icon layer in your case) to make a selection, and then you click the Align horizontal centres button. Now all layers will move horizontally to correspond to the horizontal centre of the icon.
If you want to align something with respect to several layers at once (without grouping, merging etc.) it is also possible to Ctrl + Shift + Click on the thumbnails.