Most since some of orders qualify for free shipping, there is not much we can do but eat that shipping cost.
That's the problem right there. On the checkout, don't call it free shipping. Customers invariably misjudge the cost to send a package, and while they know it doesn't cost $0 for you, they believe you get some ultra discount that allows you to send packages for pennies on the dollar. Call it a shipping discount (or as Amazon calls it, a Super Saver Shipping Discount).
Consider these two example invoices.
Invoice A Widget: $99.99 Shipping: $0 Total: $99.99