You asked how hard it is to write software to read TrueType (.ttf) and OpenType (.otf) files, allowing adjustment to kerning, character widths, and character spacing tables. Well, I'll tell you. It's difficult.
Microsoft Typography's The OpenType Font File is a good introduction to the high-level structure of TrueType and OpenType font files. The internal structure is of some global indexing and checksum fields, followed by a number of "tables", each with their own internal structures. You will need to write code to unpack this global structure, parse and modify the tables you want to change, then rebuild the global structure and recompute checksums.
To let your users modify kerning, character widths, and character spacing, you will probably need to modify at least the kern
, hmtx
, and gpos
tables. Changes to these tables may affect values in other tables.
Furthermore, text engines and application software have their own expectations for the contents of an OpenType or TrueType font. These interactions are complex and not always well documented. I expect all capable, reliable fonts which work with demanding text layout software have details about their contents which reflects a great deal of know-how and painful experience.
If you think learning the C language in order to use existing freetype code is hard, just wait until you try debugging why fonts modified by your tools won't work in your text layout software.
You don't say what kind of modifications you want to make to the fonts. Why not buy existing software, instead of making your own? There exists application software, like FontLab's TypeTool, which might let you do all the editing of kerning, character widths, and character spacing which you need. Sure, it costs money, but consider how much your time is worth, and how much time it will take you to make your code work sufficiently well to meet your needs.
If you really want to go ahead with writing your own code, you may find the Adobe Font Development Kit for Opentype (AFDKO) useful. Good luck.