and if anyone does want an app... here is a free shell script that does what the explained workaround does.
Copy the contents of the code below into a file, call it wififixer.sh then run it from a Terminal window as such:
$ sh wififixer.sh
again, note that the script must be started when the Wifi is in a "healthy" state and be allowed to run undisturbed.
The code:
#!/bin/sh
#
# This code is being released to Public Domain.
#
# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
# SUCH DAMAGE.
#
# The purpose of this program script is to find the default gateway
# and continuously ping it every 15 seconds, in order to workaround
# Apple's BUG in their Wifi (AES) framework/driver, where Wifi
# connectivity is lost without continuous packet exchange.
#
# This BUG has been persistent in iOS 6 onward. It was also introduced
# with release of MacOS Mavericks 10.9.x.
#
# Reference: https://discussions.apple.com/thread/5663520
# Find out IPv4 default gateway in route table.
gw=`netstat -rnfinet | grep default | awk '{print $2}'`
# If not found in route table, print message and exit.
test -z "${gw}" && echo "No (default) Gateway found." && exit 1
# ping the gateway every 15 seconds
ping -i 15 ${gw}