Self solved.
The PauseAnims checkbox in the SkeltalMesh settings was checked.
I didn’t notice it because I didn’t have any animations on the BP side and had everything play in level sequences. I think that if PauseAnims is checked, animations with a weight of less than 1 are not played.
I have seen animations that have a weight of 1 and are not overlapping other blocks (i.e., not using EaseIn-Out) play.
I’m sure I’m being silly, but I was wondering if the animation would play in the viewport even if PauseAnims is checked, but not when rendered.
I hope this helps someone who makes a similar mistake someday.