How to display, search, and edit form submissions from a table with WebForm?
No, it would not be better to hand-code everything in PHP.  However, if you need heavy customization of the display of data the Webform module is probably the wrong approach.  Webform is good at getting data in but the options for getting data out are somewhat limited.

Instead, I would make a custom content type and use Views to handle the display.  To do so, navigate to /admin/structure/types/add and call it something like "People."  Once you perform the basic configuration and click save, you will be taken to the Content types administration page; click manage fields for the content type you just created.

Here, you should be able to add the same kinds of fields that you added in Webform.  This interface is not quite as clean as Webform's but it will allow you full flexibility with Views.

Once you have configured the fields as you like, go to the permissions page (/admin/people/permissions/roles) and make sure only the admin role has access to create and edit content of that content type.

Then, configure your view(s).  Basically, you'll want a view of node content of the content type you just created.  Add the fields you want to display under Fields.  To get search filters, add Filters and check Expose this filter to users.  When you set up the view(s), make sure to set the permissions using the Views edit interface so that only the admin role can access the views.

This is a very rough overview but hopefully it can get you started in a productive direction.