I found that the ACharacterhas a field bWasJumping that gets set for a frame AFTER the jump starts, and can successfully be used to trigger jumping animations or otherwise distinguish jumps from other falling sub-states.
// Assuming `ACharacter* Character` is defined somewhere...
bool UMyClass::IsJumping() const
{
if (Character != nullptr) {
return Character->bWasJumping;
}
return false;
}