If products have featured images of different sizes the product grid items will have different heights and the inner content, such as title, price, and “Add to cart button” would be on different levels. The best solution is to upload images of equal size and proportion, however, considering a lot of products on the site, such a solution cannot be always applicable.
In order to settle the issue, navigate to Appearance – > Customize -> WooCommerce -> Product Image and find the size option for product page image as well as images in a grid:

Thumbnail cropping checkboxes:
Note: there is no required or recommended image size for a product or other purposes. The image should be big enough to have a nice view. Just for information we provide images sizes applied in our demo:
In order to disable or enable a masonry grid in the Shop page as well as categories pages, there is an option in the Theme Settings > Product archive> Layout > Masonry Grid.
Different length of product titles also can shift the content and cause aligning the content on a different level, in order to fix this, there is the option to set one line-, two lines-, or no title limitation in the Theme Settings -> Product archive- > Product options- > Product title lines limit.
