I do it all in CH myself, because on my hardware AE is very slow. CH is faster, but not as precise. If the movements are a linear path (e.g. Bird flys straight across), then you can use blends to achieve that with precision. It’s sort of doing what Jerry described, but inside CH. If you want a graceful arc, then using a dragger is the best bet (like what Sharon described). It also depends on whether you want the other characters to move around (e.g. have the bird on the shoulder move with the character).
https://extra-ordinary.tv/2018/02/04/butterflies-and-poppies/ Shows an example of a butterfly created using draggers to flutter around and then land on a flower. The trick was the flower was swaying in the wind. What I did in that case was copy the butterfly artwork into the character puppet and hid it with a trigger. So when the butterfly got close, I hid the flying butterfly and revealed the butterfly-on-the-flower, so it automatically moved with the swaying flower. Its more work, but the result looked good. (I also put legs on the standing butterfly.)
Normally what I do for precise movements between two points is to use blends. Using Blends in Adobe Character Animator - YouTube was an early video I created If any help. Simulated Camera Panning in Adobe Character Animator - YouTube Talks about camera panning, but its the same concept. https://extra-ordinary.tv/2018/08/30/music-videos-in-character-animator-part-3/ talks about syncing to music (Precise timing required). To use a blend you basically set the puppets starting position, arm the recording, set the X/Y to the destination, record a take, then extend out the recording. There is a little handle in the top left and right of the take you can use to drag sideways. It will then move blend the X/Y values from the starting coordinate to the destination. Its like a poor mans keyframing (AE has more precise controls). I tend to use this because I find it faster to stay in CH than AE.
But as you can see, there is not a single solution here!