Another option is to offer per-item flat-rate shipping. In the USA, you'd offer three rates: Lower 48, Alaska/Hawaii, and International.
You would pick a rate that covers your overall shipping costs over time. Don't worry so much about trying to break even on shipping with every order. You'll go mad trying to get that to work. Concentrate on covering your costs on a monthly average, then adjust up/down as needed each month, until you hit a sweet-spot.
With larger (heavier) items, you could build some shipping cost into the product price.
The idea is to keep your shipping formula simple, so that people can understand it. For example, "Shipping on each item is $1.99 ($2.99 to AK/HI, $5.99 International)".
Yes, it costs more than $1.99 to ship one item, but the low cost may convince the customer to order multiple items, that when combined, covers the cost.