I don't recommend implementing a feature the way you have done it. You should use a supporting page instead of trying to make the module on the CMS page do everything by linking back to it with new urls and extra params. The CMS page does not know about your friendly urls or parameters, it only knows about the url from page settings and that is the canonical url as far as it is concerned.
If you use a supporting page like other features in mojoPortal then you have control over the canonical url and must set it yourself.
The module is meant to be the entry point for the feature, for item details it should link to one or more supporting pages and pass the page id and module id (along with any other params you need). Study the existing features like Forums, Blog, or WebStore for examples.
Hope that helps,