Well, you will need someone with more knowledge of the mysql stuff that zen cart uses. Not my field I am afraid.
The way it works is that in the product_listing page:
mainpage= index loads the template:
tpl_index_product_list.php
which in turn loads
tpl_modules_product_listing.php
which in turn loads
product_listing.php which sorts the entries into an array where one entry corresponds to one <td> cell in the final table.
and it loads:
tpl_tabular_display.php which outputs the array in a form of a table which is what we see on the page.
Somewhere in that string the process breaks down if you simply call tpl_index_product_list at the bottom of the product_info page. I assume that this is because some of the variables that this template uses are not defined correctly at this point in the page. Whereas they have been if it is used in the position it was intended.
As I say you need someone with a bit more knowledge of the way zen cart processes the database, I am afraid.
Anyone?