In addition to what Roman has already mentioned, I'd highly recommend AGAINST using another ORM tool. I've worked in several other projects where the previous developer had already done this and it caused a lot of problems when we went to upgrade. Maintenance was a nightmare and not only did we have Kentico related upgrade issues, we had to upgrade the ORM tool as well because there were bugs which were fixed.
Using the OOTB API calls does offer all of your common T-SQL security features, it does not perform any type of permission or access checks, that all depends on your business rules and any other ORM will not have this built in either.
Regarding Custom Tables and your own Page Types, Kentico provides you the code you need to get strongly typed objects in return so there should be no issue with any of this. You can simply copy and paste the code into your project and have access to it as needed.
Regarding the items you were talking about
You can take advantage of all of these features using the OOTB API. Sometimes you need to add another line or two of code but all of them are handled OOTB if you tell your query to use them. Off of top of my head I don't have any code samples but I know there are some out there.