SELECT 
  cscart_product_prices.product_id, 
  MIN(
    IF(
      cscart_product_prices.percentage_discount = 0, 
      cscart_product_prices.price, 
      cscart_product_prices.price - (
        cscart_product_prices.price * cscart_product_prices.percentage_discount
      )/ 100
    )
  ) AS price 
FROM 
  cscart_product_prices 
WHERE 
  cscart_product_prices.product_id IN (
    2597, 1028, 1029, 1031, 1654, 2974, 2769, 
    2975, 2976, 2977, 2978, 2979, 1058, 
    1059, 1018, 2697, 1470, 1864, 1865, 
    1951
  ) 
  AND cscart_product_prices.lower_limit = 1 
  AND cscart_product_prices.usergroup_id IN (0, 1) 
GROUP BY 
  cscart_product_prices.product_id

Query time 0.00094

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "14.01"
    },
    "grouping_operation": {
      "using_filesort": false,
      "table": {
        "table_name": "cscart_product_prices",
        "access_type": "range",
        "possible_keys": [
          "usergroup",
          "product_id",
          "lower_limit",
          "usergroup_id"
        ],
        "key": "product_id",
        "used_key_parts": [
          "product_id"
        ],
        "key_length": "3",
        "rows_examined_per_scan": 20,
        "rows_produced_per_join": 3,
        "filtered": "19.88",
        "index_condition": "(`zdrowy_db`.`cscart_product_prices`.`product_id` in (2597,1028,1029,1031,1654,2974,2769,2975,2976,2977,2978,2979,1058,1059,1018,2697,1470,1864,1865,1951))",
        "cost_info": {
          "read_cost": "13.61",
          "eval_cost": "0.40",
          "prefix_cost": "14.01",
          "data_read_per_join": "95"
        },
        "used_columns": [
          "product_id",
          "price",
          "percentage_discount",
          "lower_limit",
          "usergroup_id"
        ],
        "attached_condition": "((`zdrowy_db`.`cscart_product_prices`.`lower_limit` = 1) and (`zdrowy_db`.`cscart_product_prices`.`usergroup_id` in (0,1)))"
      }
    }
  }
}

Result

product_id price
1018 1.80000000
1028 610.00000000
1029 295.00000000
1031 77.40000000
1058 25.00000000
1059 25.00000000
1470 44.00000000
1654 63.70000000
1864 120.00000000
1865 120.00000000
1951 120.00000000
2597 83.25000000
2697 125.00000000
2769 77.35000000
2974 85.00000000
2975 103.00000000
2976 103.00000000
2977 96.00000000
2978 96.00000000
2979 96.00000000