Use BuildRowsetFromString
to split your delimited string into Ids.
Try this :
%%[
var @ProductID, @Product, @ProductRecord, @Ids
Set @ProductID = AttributeValue('Account:PersonContact:Last_abandoned_cart_lineitem_Product_IDs__c')
set @Ids = BuildRowsetFromString(@ProductID, ",")
FOR @i = 1 to ROWCOUNT(@Ids) DO
SET @ProductId = Field(ROW(@ids, @i),1)
SET @Product = LookupRows("EcommerceProductImageUrls", "ProductID", @ProductID)
SET @ProductRecord = row(@Product, 1)
]%%
<center><img style="border: 0;display: block;height: auto;width: 150px;max-width: 1200px;" alt="" width="150" src="%%=Field(@ProductRecord, "ProductImageURL")=%%"></center>
<p style="text-align: center; font-size: 16px"><span style="color: #FFFFFF">%%=Field(@ProductRecord, "ProductTitle")=%%</span></p>
%%[ next @i ]%%
See here and here for further details on how to split delimited strings.
Of course add the correct checks on max values and non empty strings.