Kathy,
You will actually be doing your site a favour should you decide to change your URLs. Having static instead of dynamic URLs will not only make it easier for search engines to crawl and index the URL in SERPs, but make it easier for users to also link to the site. This should negate some of the loss of linking URLs that you will encounter. Also as you said keywords in the URLs are a major plus.
Before you make any URL changes, it is crucial for you to take the following steps for minimising the impact for your sites traffic:
- List where the old URLs are being linked within the site (your internal URLs)
- List where the old URLs are being linked from externally (people linking to your pages).
- Create a separate sitemap XML file for the new site URL structure
- Implement your 301 redirects using regex on your htacess file
- Make sure you exactly match your old pages to the relevant new pages when 301 redirecting. Most people would get lazy and redirect to the home or category level pages.
- Check for any pages not properly 301 redirected internally by looking at the number of 404s and broken links applicable to your site.
Once you do change over the URLs start updating the old urls linking between your sites pages. Over the long term you would then need to contact the websites which have used the old URLs and ask them to update to the new version. Leave your old XML sitemap file applicable in both Bing and Google Webmaster Tools until you see them both indexing most (if not all) your new URL pages from your newly created sitemap.
Tools that I would use for the following steps could be XENU or screaming frog (my favorite).
Hope this helps