Should I include another column here to keep track of cost + tax or not?
This is a legal question.  The database schema should mimic what the laws mandate.

Since the tax_rate can change all too often, you really should include the rounded value of tax in the table.

On the other hand, total_cost is necessarily equal to subtotal of cost and tax, you should not include it.  A general rule in schema design is not to include any redundant data; that includes readily computable values.

Another thing to think about is "when" the tax is computed.  In some types of stores, the tax must be calculated from the subtotal.  In other types of stores, the laws may require computing the tax on each item (or multiple of items).

Perhaps you need a boolean flag called taxable.

Some laws say that some items are taxed and some are not.  For example, in California, food generally does not incur sales tax.  But a grocery store often sells non-food items, so there are two subtotals: "taxable" and "non-taxable".  To further confuse things there was, briefly, a "junk food tax" on various 'foods'.

Then comes "VAT" -- which seems to be reverse-computed from the total that the customer pays.