Unable to check if image uploaded by wp_image_editor exists using file_exists function

When I used your exact code on a local test site I was unable to save the resized image. This is because you’re passing a URL to wp_get_image_editor() instead of a path. You’re also passing a URL to pathinfo(), which also requires a path.

$pathinfo = pathinfo( $uploaded['url'] );
$image = wp_get_image_editor( $uploaded['url'] );

The above lines need to be:

$pathinfo = pathinfo( $uploaded['file'] );
$image = wp_get_image_editor( $uploaded['file'] );

This is because the file key of the array returned by wp_handle_upload() contains the path to the file, which is what each function above requires.

I can’t explain why you’re able to access the 300×300 version in the browser though. That didn’t happen to me when I tested. It could be something specific to the WordPress.com hosting environment.