I teach functional programming regularly, and I wish I knew of better resources. Here are a few suggestions, mostly aimed at programmers with some programming experience.
It's only about data structures, but Chris Okasaki's Purely Functional Data Structures is pretty amazing and will definitely prevent you from treating anything as imperative. I also hear good things about Graham Hutton's book for beginners using Haskell, but I can't say anything about it of my own knowledge. I second the recommendation of the Haskell School of Expression.
My other thought is that SICP is not a good book from which to learn functional programming. If you already know Scheme, it is a good book to admire, but SICP is less about functional programming and more about how to implement all known interesting computer-science ideas in Scheme. Two techniques that are very important to many functional programmers---programming with pattern matching and partial application of curried functions---are not well supported in Scheme, and you would be missing out on a lot of the promise of languages like F#. On the other hand, Lua, being very similar to Scheme, doesn't support these things either.
Try Haskell; Haskell makes it a lot harder for you to program your old thoughts in the new language. Instead, Haskell forces you to think new thoughts.