I would reduce the number of pages.
Imagine you have:
www.example.com/products/letterstyle1/a.php
www.example.com/products/letterstyle1/b.php
www.example.com/products/letterstyle1/c.php
www.example.com/products/letterstyle1/d.php
...
www.example.com/products/letterstyle2/a.php
www.example.com/products/letterstyle2/b.php
www.example.com/products/letterstyle2/c.php
www.example.com/products/letterstyle2/d.php
...
- I would redirect
www.example.com/products/letterstyle1/a.php
(b.php
, c.php
, etc) to www.example.com/products/letterstyle1.php
(*)
- I would redirect
www.example.com/products/letterstyle2/a.php
(b.php
, c.php
etc) to www.example.com/products/letterstyle2.php
...
You'll end up with 577 (ish) product pages instead of 15000.
On those product pages, you can still show pictures of all A-Z letters in that style. Add the option to add the letters your visitors want to buy in that style to their shopping cart on that page.
Add a description of the style on each of your new product pages.
(*) I'd actually use a more descriptive filename than letterstyle1.php
.