How to display get_the_category of post showing only CHILD of category “X”

You can do this by getting the child categories of that category first, then passing them as an array to your query.

$categories=get_categories(
    array( 'parent' => $cat->cat_ID )
);

$cat_list = [];
foreach ($categories as $c) {
    $cat_list[] = $c->term_id;
}

ref: Get the children of the parent category

This won’t/might not work, but it’s usually worth trying passing an array where you could pass an integer in WordPress:

$args = array( 'numberposts' => '5','post_status' => 'publish','category' => $cat_list,'category__not_in' => '680', 'orderby' => 'post_date', 'order' => 'DESC' );

wp_get_recent_posts uses get_posts & get_post accepts an ID of a category, at the time of writing it doesn’t mention an array… So you might need to use WP_Query:

$query = new WP_Query( array( 'category__and' => $cat_list ) );

see: https://codex.wordpress.org/Class_Reference/WP_Query