There are lots of different ways to approach this problem - I've presented below one which I have seen in more than one company, and has worked well for each.
The file name becomes
[Project Name]-[Document Type]-[Sequential]-[Revision]-[Version]-[Optional Description]
The first three are self-explanatory.
Revision: This is either an Alpha (A, B, C) or Numeric (1, 2, 3) according to the status of the document as either 'development' or 'production'.
Version: This is used to keep track of draft copies between revisions, and is typically a two digit number (01, 02, 03).
Optional Description: A description may be added for all copies of a document, or sometimes only for exported (e.g. .PDF .STEP) documents. For CAD files that reference each other, there is often benefit in storing description in metadata instead.
So, for your examples, this would look like:
The 28th Letter Template: 10001-TEM-00028-1-00
The 28th Letter Signed: 10001-LET-00028-1-00
The 54th Drawing Approved by Client 10001-DWG-00028-1-00
All of these are recorded as "1-00", because they are all approved, released, non-draft files. Any file name ending in version -00 should be stored as a read-only copy
Note how the template is given a different Document Type - I have never seen a template treated as its end-document type - only ever as a 'template' document type.
Here is an extended lifecycle example for a part document:
10001-PRT-00037-X-01 Part document created. First draft
10001-PRT-00037-X-02 Changes made to part by designer, saved as next version for archive
10001-PRT-00037-A-00 First design review - stored as read-only copy for reference vs meeting notes
10001-PRT-00037-A-01 Saved as next draft version to allow changes to be made following review
10001-PRT-00037-A-02 Changes made to part by designer, saved as next version for archive
10001-PRT-00037-A-03 Changes made to part by designer, saved as next version for archive
10001-PRT-00037-B-00 Second design review - stored as read only.
10001-PRT-00037-1-00 Reviewer was happy with design, upgraded to 1-00 production release, document is signed off.
With regard to documents at specific dates - this should always be visible in/on the document. It is not the job of the filename to store this data, as it would be lost on a printed copy. For example, if you are scanning a copy of a file, because it has been signed - then the date should be written alongside the signature. In this case, the printed document would most likely be an Alpha Revision, and -00 version, with the scanned/signed copy saved with a Numeric Revision and -00 version, as a read-only copy. Because -00 documents should always be saved as read only, their date modified field serves as a record of the date of scanning, also.
I hope this serves some inspiration - ultimately every company is different, and it's OK develop your own system to fit your needs, as long as you are consistent in its enforcement.