Is it required to have a cycle in an animation? Let's say I have an action where a character sits down. First I have to keyframe all the bones in their original position and use those keyframes as origin for the sitting position. Is it a technical requirement to then duplicate the "origin" keyframes and put them at the end of the animation so that my character can go back to its original position?

I have tried both and I'm having the problem that after the animation is over and I open another action, certain bones stay in the position where the last keyframe was inserted. The animation looks terrible.

According to my knowledge, this shouldn't happen because keyframes in different actions are independent. If I change the location of a bone in action A and then switch to action B, the location should be reset or at least not influenced at all.

In other words, do all animations have to be in cycles? Can't I just leave one open and expect the others not to adopt the bone properties?
When you open an action and Blender displays a frame, Blender looks for the bones associated with the keyed channels on that frame. Only channels with fcurves of the action are updated, unkeyed channels remain with the same values.

If a character is posed sitting down and a nod action is opened (which only has keys for the head), only these (head) keys are going to update the bones (the head). It doesn't matter in which position the characters other bones were, when the nod action was created, only the bones are remembered which are keyed. For the other bones, there is nothing to evaluate.

A single key  is enough to create a horizontally extrapolated fcurve. The solution to your request is to simply key all bones on at least on frame of the animation. If this clutters up your action editor with too many channels, you can always regroup them and/or change their order by selecting them and pressing &#8670; Page up/&#8671; Page down. Most actions will look like the image below. If you want bones to preserve a certain position, key them all!