I'd like to separete these things due to clearity reasons but I wonder
if calling different FixedUpdate() functions would imply some kind of
issue. For example: is their execution ensured to be called
sequentially or they could run asincronously?
Each callback of each MonoBehaviour will be called exactly once for each update loop, but you haven't any guarantee about the order (unless you force the execution order explicitly).
Is there any performance loss if I attach a script to a GameObject for
each action to be performed (such as movement, attaking, interacting)
instead of attaching a single script dealing with every single aspect?
Short answer: NO.
of course there will be a micro overhead, because a separate component need to be stored and updated, but this isn't even perceptible (maybe if you have thousands of components, and you could eventually try to benchmark it).
In any case that's definitely the goal of a component based architecture to split functionality across specific components, so I'd encourage you to do that.
Just a side (personal)note about execution order: it's true that you can force a specific update order of components, and that's sometimes is useful (rarely from my point of view). Forcing a specific update order btw, implies an implicit relation/dependency between components, that is generally not what we want if the components are truly independent.