Currently repeat regions with the attribute "Duplicates" or "No Dup/Level" sort by Feature # by default, which puts components into their assembly order. "No Duplicates" sorts differently for some reason, and I think it should also sort by Feature #.
For recursive components that show up in more than one location (ie sub components used in more than one sub-assembly), they could just be shown once in the first location they're used.
Please reference the following support articles describing the current functionality:
Article - CS195493 - BOM table with attribute No Duplicates does not sort the table based on Feature # in Creo Parametric
Article - CS51354 - How to generate BOM listing of components in order of assembly, and also keep the No Duplicates attributes in Pro/ENGINEER and Creo Elemenst/Pro