Catalog Price Rules are calculated in advance by Magento, before rendering a page. Also these rules do not include any tax calculation for product. They are applied before tax gets calculated for a product. Also fixed price tax, same as regular taxes, are always applied on top of the final price calculation of the product, so you never get discount on FPT.
So the logic in standard taxes is like that:
Config option -> Catalog Prices "Including Tax":
Our product price is already including tax, so it will just calculate what is the base price without tax (by using default tax country for admin) and use it later on in checkout and catalog to show tax amounts, depending on the product tax classes.
Config option -> Catalog Prices "Excluding Tax":
Our product price does not include tax, so it will use it as a base price and just will calculate prices depending on customer group, location, etc.
But your problem seems not in FPT logic itself, since this functionality is done specially for fixed fee, not a percentage. Usually FPT is used as fixed amount, like fee to plastic bottle, so people return it back to recycle, to get the fee back. For instance in NL they charge 0,25 EUR for each plastic bottle of drink you buy in supermarket, and you can get them back if you return it to supermarket.
In your case FPT is not applicable at all, since CD is bundled with book and it is different pricing model. In my point of view, you were supposed to use "Bundle" product type and have your book and cd as separate simple products with own tax classes. Then in checkout process and on product pages the prices are calculated correctly. But, this one has some drawback on category pages, but this is another story.