If I make changes in my Android Library project I have to manually refresh, and sometimes clean all projects that use the Library. Is this normal? Is there a way around this?
That is true. If your lib builds a jar, a that you have added to the Android project you will need to refresh (you can also just right click and refresh on the external jar reference also to save time).
I had this same issue a couple weeks ago. I didn't find the solution I wanted, which was to modify the sources directly in the library project and the dependent projects automatically refresh, but I did find something better than the chaos of constantly refreshing and cleaning.
The best way that I could find was to use the linked library folder from the dependent project being worked on, that way the project sees the changes live. When jumping to another dependent project, you'll still need to refresh the files that were changed in the other project (usually just the src folder). You may also need to refresh the library project if you want to make direct changes. It might not sound like much of a help, but if you spend large chunks of time in a single dependent project (as has been my case so far), it really does help.